diff -r 79c6a41cd166 -r 844b978f8d5e homescreenpluginsrv/hspsmanager/src/hspsserverutil.cpp --- a/homescreenpluginsrv/hspsmanager/src/hspsserverutil.cpp Thu Dec 17 08:54:17 2009 +0200 +++ b/homescreenpluginsrv/hspsmanager/src/hspsserverutil.cpp Thu Jan 07 12:55:39 2010 +0200 @@ -566,6 +566,24 @@ const TPath& aTargetPath, const TFileName& aSourceFile ) { + // Construct target file with full path. + TFileName targetFile; + + TParse targetParser; + targetParser.Set( aTargetPath, NULL, NULL ); + + if( targetParser.NamePresent() ) + { + targetFile = aTargetPath; + } + else + { + TParse sourceParser; + sourceParser.Set( aSourceFile, NULL, NULL ); + targetFile = targetParser.DriveAndPath(); + targetFile.Append( sourceParser.NameAndExt() ); + } + // Make target folder TInt error = aFs.MkDirAll( aTargetPath ); if( error == KErrAlreadyExists ) @@ -581,7 +599,7 @@ // Check whether the resource needs to be copied if ( hspsServerUtil::ResourceCopyIsRelevantL( aSourceFile, - aTargetPath, + targetFile, aFs ) ) {