mpxplugins/serviceplugins/collectionplugins/mpxsqlitepodcastdbplugin/src/mpxdbpodcast.cpp
--- a/mpxplugins/serviceplugins/collectionplugins/mpxsqlitepodcastdbplugin/src/mpxdbpodcast.cpp Thu Dec 17 08:45:05 2009 +0200
+++ b/mpxplugins/serviceplugins/collectionplugins/mpxsqlitepodcastdbplugin/src/mpxdbpodcast.cpp Thu Jan 07 12:45:53 2010 +0200
@@ -134,15 +134,25 @@
TUint32 episodeId(MPXDbCommonUtil::GenerateUniqueIdL(iDbManager.Fs(), EMPXCollection,
aMedia.ValueText(KMPXMediaGeneralUri), EFalse));
- if (EpisodeExistsL(episodeId))
+ if ( EpisodeExistsL( episodeId ))
{
- DoUpdateEpisodeL(episodeId, aMedia, NULL);
+ // Return deleted file paths to caller
+ CDesCArray* fp = new( ELeave ) CDesCArrayFlat( 1 );
+ CleanupStack::PushL( fp );
+
+ // a list of change event messages a result of the item being removed
+ CMPXMessageArray* itemChangedMessages = CMPXMediaArray::NewL();
+ CleanupStack::PushL( itemChangedMessages );
+
+ DeleteEpisodeL( episodeId, *fp, *itemChangedMessages, ETrue );
+
+ CleanupStack::PopAndDestroy( itemChangedMessages );
+ CleanupStack::PopAndDestroy( fp );
}
- else
- {
- // add the song
- DoAddEpisodeL(episodeId, aMedia, aDrive, NULL);
- }
+ // add the song
+ DoAddEpisodeL(episodeId, aMedia, aDrive, NULL);
+
+
return episodeId;
}