mtpdataproviders/mtpfileandfolderdp/src/cmtpfiledp.cpp
changeset 20 6e82ae192c3a
parent 17 aabe5387f5ce
child 47 63cf70d3ecd8
--- a/mtpdataproviders/mtpfileandfolderdp/src/cmtpfiledp.cpp	Fri Apr 16 15:51:48 2010 +0300
+++ b/mtpdataproviders/mtpfileandfolderdp/src/cmtpfiledp.cpp	Mon May 03 13:19:02 2010 +0300
@@ -136,14 +136,11 @@
 void CMTPFileDataProvider::StartObjectEnumerationL(TUint32 aStorageId, TBool /*aPersistentFullEnumeration*/)
     {
     __FLOG(_L8("StartObjectEnumerationL - Entry"));
-
     iPendingEnumerations.AppendL(aStorageId);
-    if (iPendingEnumerations.Count() == 1)
-        {
-		CMTPDataProviderController& dpController(iSingletons.DpController());
-		TBool bOnlyScanRoot = ( (dpController.EnumerateState() == CMTPDataProviderController::EEnumeratingFrameworkObjects) && (dpController.NeedEnumeratingPhase2()) );
-		iFileEnumerator->StartL(iPendingEnumerations[KActiveEnumeration], bOnlyScanRoot);
-        }
+    CMTPDataProviderController& dpController(iSingletons.DpController());
+    //must read this NeedEnumeratingPhase2 before this function return
+    TBool bScanAll = dpController.NeedEnumeratingPhase2();
+    iFileEnumerator->StartL(iPendingEnumerations[KActiveEnumeration], bScanAll);
     __FLOG(_L8("StartObjectEnumerationL - Exit"));
     }
     
@@ -222,12 +219,6 @@
     
     Framework().ObjectEnumerationCompleteL(iPendingEnumerations[KActiveEnumeration]);
     iPendingEnumerations.Remove(KActiveEnumeration);
-    if (iPendingEnumerations.Count())
-        {
-		CMTPDataProviderController& dpController(iSingletons.DpController());
-		TBool bOnlyScanRoot = ( (dpController.EnumerateState() == CMTPDataProviderController::EEnumeratingFrameworkObjects) && (dpController.NeedEnumeratingPhase2()) );
-        iFileEnumerator->StartL(iPendingEnumerations[KActiveEnumeration], bOnlyScanRoot);
-        }
     __FLOG(_L8("HandleEnumerationCompletedL - Exit"));
     }