--- a/mtpfws/mtpfw/dataproviders/devdp/src/cmtpdevicedatastore.cpp Tue May 25 13:35:25 2010 +0300
+++ b/mtpfws/mtpfw/dataproviders/devdp/src/cmtpdevicedatastore.cpp Wed Jun 09 10:36:33 2010 +0300
@@ -438,6 +438,7 @@
if (isCompleted)
{
Schedule(EEnumerated);
+
}
else
{
@@ -453,12 +454,20 @@
break;
case EEnumerated:
+ {
+ if (iHasPendingRequest)
+ {
+ iHasPendingRequest = EFalse;
+ iSingletons.DpController().ExecutePendingRequestL();
+ }
+
if (iCallback)
{
iCallback->NotifyEnumerationCompleteL(iStorageId, KErrNone);
iCallback = NULL;
iStorageId = KMTPNotSpecified32;
}
+ }
break;
case EEnumeratedBatteryLevel :
@@ -483,7 +492,8 @@
CActive(EPriorityStandard),
iBatteryInfoV1Pckg(iBatteryInfoV1),
iPhoneIdV1Pckg(iPhoneIdV1),
- iIsConnectMac(EFalse)
+ iIsConnectMac(EFalse),
+ iHasPendingRequest(EFalse)
{
CActiveScheduler::Add(this);
}
@@ -1235,3 +1245,10 @@
{
iIsConnectMac = aConnectMac;
}
+
+void CMTPDeviceDataStore::RegisterPendingRequest()
+ {
+ iHasPendingRequest = ETrue;
+ }
+
+