--- a/emailservices/emailserver/cmailhandlerplugin/src/cmailcpsif.cpp Thu Dec 17 08:39:21 2009 +0200
+++ b/emailservices/emailserver/cmailhandlerplugin/src/cmailcpsif.cpp Thu Jan 07 12:38:38 2010 +0200
@@ -106,11 +106,12 @@
// create resourcefile
CCoeEnv* env = CCoeEnv::Static();
- TFileName resourceFile;
+ // Load resource file from the same drive where this dll is loaded from
+ TFileName dllFileName;
+ Dll::FileName( dllFileName );
TParse parse;
-
- parse.Set( KResourceFile, &KDC_ECOM_RESOURCE_DIR, NULL );
- resourceFile = parse.FullName();
+ User::LeaveIfError( parse.Set( KResourceFile, &dllFileName, NULL ) );
+ TFileName resourceFile( parse.FullName() );
BaflUtils::NearestLanguageFile( env->FsSession(), resourceFile );
iResourceFileOffset = env->AddResourceFileL( resourceFile );
@@ -474,47 +475,53 @@
}
}
+ // Parse mif file full path by own dll drive letter
+ TFileName dllFileName;
+ Dll::FileName( dllFileName );
+ TParse mifParse;
+ User::LeaveIfError( mifParse.Set( KMifPath, &dllFileName, NULL ) );
+
if (!iconIds.Length())
{
TBuf<KMaxDescLen> id;
- iconIds.Copy(KMifPrefix);
- iconIds.Append(KMifPath);
- iconIds.Append(KSpace);
- id.Num(aBitmapId);
- iconIds.Append(id);
- iconIds.Append(KSpace);
- id.Num(aBitmapMaskId);
- iconIds.Append(id);
+ iconIds.Copy( KMifPrefix );
+ iconIds.Append( mifParse.FullName() );
+ iconIds.Append( KSpace );
+ id.Num( aBitmapId );
+ iconIds.Append( id );
+ iconIds.Append( KSpace );
+ id.Num( aBitmapMaskId );
+ iconIds.Append( id );
}
// The actual image publishing part starts here
CLiwGenericParamList* inparam = &(iServiceHandler->InParamListL());
CLiwGenericParamList* outparam = &(iServiceHandler->OutParamListL());
- TLiwGenericParam type( KType, TLiwVariant(KCpData));
+ TLiwGenericParam type( KType, TLiwVariant( KCpData ) );
inparam->AppendL( type );
CLiwDefaultMap* pdatamap = CLiwDefaultMap::NewLC();
CLiwDefaultMap* datamap = CLiwDefaultMap::NewLC();
- pdatamap->InsertL( KPublisherId, TLiwVariant( KPubId ));
- pdatamap->InsertL( KContentType, TLiwVariant( aContentType ));
- pdatamap->InsertL( KContentId, TLiwVariant( aContentId ));
+ pdatamap->InsertL( KPublisherId, TLiwVariant( KPubId ) );
+ pdatamap->InsertL( KContentType, TLiwVariant( aContentType ) );
+ pdatamap->InsertL( KContentId, TLiwVariant( aContentId ) );
- datamap->InsertL(aKey, TLiwVariant(iconIds));
+ datamap->InsertL( aKey, TLiwVariant(iconIds) );
pdatamap->InsertL( KDataMap, TLiwVariant(datamap) );
- TLiwGenericParam item( KItem, TLiwVariant( pdatamap ));
+ TLiwGenericParam item( KItem, TLiwVariant( pdatamap ) );
inparam->AppendL( item );
// Publish icon ( or remove it from widget when no id provided )
if ( aBitmapId == KNullIcon )
{
- iMsgInterface->ExecuteCmdL( KDelete, *inparam, *outparam);
+ iMsgInterface->ExecuteCmdL( KDelete, *inparam, *outparam );
}
else
{
- iMsgInterface->ExecuteCmdL( KAdd, *inparam, *outparam);
+ iMsgInterface->ExecuteCmdL( KAdd, *inparam, *outparam );
}
CleanupStack::PopAndDestroy( datamap );