diff -r 50bf9db68373 -r 33ae025ac1e8 harvester/server/src/harvesterqueue.cpp --- a/harvester/server/src/harvesterqueue.cpp Fri Apr 16 15:23:55 2010 +0300 +++ b/harvester/server/src/harvesterqueue.cpp Mon May 03 12:55:01 2010 +0300 @@ -75,6 +75,11 @@ iItemQueue.Close(); iFs.Close(); RMediaIdUtil::ReleaseInstance(); + + if (iHEM) + { + iHEM->ReleaseInstance(); + } } // --------------------------------------------------------------------------- @@ -86,6 +91,7 @@ WRITELOG( "CHarvesterQueue::ConstructL()" ); User::LeaveIfError( iFs.Connect() ); iMediaIdUtil = &RMediaIdUtil::GetInstanceL(); + iHEM = CHarvesterEventManager::GetInstanceL(); } // --------------------------------------------------------------------------- @@ -148,6 +154,13 @@ aItem->Uri(), mediaId, time ) ) { WRITELOG( "CHarvesterQueue::Append() - found a blacklisted file" ); + TRAP_IGNORE( iHEM->DecreaseItemCountL( EHEObserverTypePlaceholder ) ); + TRAP_IGNORE( iHEM->DecreaseItemCountL( EHEObserverTypeMMC ) ); + if( aItem->EventType() == EHarvesterEdit ) + { + // Remove possible placeholder items from DB if file was blacklisted during harvesting + iHarvesterAO->RemoveBlacklistedFile( aItem ); + } delete aItem; aItem = NULL; return;