diff -r f759b6186ab5 -r 2b4b06654caa imagehandlingutilities/thumbnailmanager/thumbnailserver/src/thumbnailmdsquerytask.cpp --- a/imagehandlingutilities/thumbnailmanager/thumbnailserver/src/thumbnailmdsquerytask.cpp Thu Jul 15 18:59:26 2010 +0300 +++ b/imagehandlingutilities/thumbnailmanager/thumbnailserver/src/thumbnailmdsquerytask.cpp Thu Aug 19 10:13:51 2010 +0300 @@ -36,7 +36,7 @@ // CThumbnailMDSQueryTask::CThumbnailMDSQueryTask( CThumbnailTaskProcessor& aProcessor, TInt aPriority, CMdESession* aMdESession, CThumbnailServer& aServer): - CThumbnailTask( aProcessor, aPriority ), iMdESession( aMdESession ), iServer(aServer), iUpdateToDb(ETrue) + CThumbnailTask( aProcessor, aPriority ), iMdESession( aMdESession ), iQuery(NULL), iServer(aServer), iUpdateToDb(ETrue) { TN_DEBUG2( "CThumbnailMDSQueryTask(0x%08x)::CThumbnailMDSQueryTask()", this ); } @@ -55,6 +55,7 @@ { iQuery->Cancel(); delete iQuery; + iQuery = NULL; } } @@ -182,14 +183,21 @@ CMdENamespaceDef* defNamespace = &iMdESession->GetDefaultNamespaceDefL(); CMdEObjectDef& objDef = defNamespace->GetObjectDefL( MdeConstants::Object::KBaseObject ); + delete iQuery; + iQuery = NULL; + iQuery = iMdESession->NewObjectQueryL( *defNamespace, objDef, this ); - iQuery->SetResultMode( EQueryResultModeItem ); + + if(iQuery) + { + iQuery->SetResultMode( EQueryResultModeItem ); - CMdELogicCondition& rootCondition = iQuery->Conditions(); - rootCondition.SetOperator( ELogicConditionOperatorOr ); + CMdELogicCondition& rootCondition = iQuery->Conditions(); + rootCondition.SetOperator( ELogicConditionOperatorOr ); - // add ID condition - rootCondition.AddObjectConditionL( aId ); + // add ID condition + rootCondition.AddObjectConditionL( aId ); + } } // ---------------------------------------------------------------------------