diff -r 48a2e0d8a4ce -r 85e0c0339cc3 mtpfws/mtpfw/dataproviders/devdp/src/cmtpdevicedatastore.cpp --- a/mtpfws/mtpfw/dataproviders/devdp/src/cmtpdevicedatastore.cpp Thu May 27 13:42:43 2010 +0300 +++ b/mtpfws/mtpfw/dataproviders/devdp/src/cmtpdevicedatastore.cpp Fri Jun 11 14:27:06 2010 +0300 @@ -35,11 +35,7 @@ // Class constants. __FLOG_STMT(_LIT8(KComponent,"DeviceDataStore");) -#ifdef __WINS__ -_LIT( KFileName, "c:\\private\\102827a2\\mtpdevice.ico"); -#else _LIT( KFileName, "z:\\private\\102827a2\\mtpdevice.ico"); -#endif // Device property datastore constants. @@ -438,6 +434,7 @@ if (isCompleted) { Schedule(EEnumerated); + } else { @@ -453,12 +450,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 +488,8 @@ CActive(EPriorityStandard), iBatteryInfoV1Pckg(iBatteryInfoV1), iPhoneIdV1Pckg(iPhoneIdV1), - iIsConnectMac(EFalse) + iIsConnectMac(EFalse), + iHasPendingRequest(EFalse) { CActiveScheduler::Add(this); } @@ -1235,3 +1241,10 @@ { iIsConnectMac = aConnectMac; } + +void CMTPDeviceDataStore::RegisterPendingRequest() + { + iHasPendingRequest = ETrue; + } + +