diff -r 705ec7b86991 -r 468cfcb53fd1 usbclasses/pictbridgeengine/src/dpsusbnotifier.cpp --- a/usbclasses/pictbridgeengine/src/dpsusbnotifier.cpp Thu Jan 07 13:25:34 2010 +0200 +++ b/usbclasses/pictbridgeengine/src/dpsusbnotifier.cpp Mon Jan 18 21:13:23 2010 +0200 @@ -150,14 +150,20 @@ // personality if (iPersonality) { - if (!iConfigured || iRollback) - { - iUsbW.SetPreviousPersonality(); - } - else - { - iUsbW.SetPreviousPersonalityOnDisconnect(); - } + TInt personalityId = KUsbPersonalityIdMTP; + iUsbM.GetCurrentPersonalityId(personalityId); + IF_DEBUG(Print(_L("CDpsUsbNotifier::Rollback, current personality= %d"), personalityId)); + if(KUsbPersonalityIdPCSuiteMTP != personalityId) + { + if (!iConfigured || iRollback) + { + iUsbW.SetPreviousPersonality(); + } + else + { + iUsbW.SetPreviousPersonalityOnDisconnect(); + } + } } IF_DEBUG(Print(_L("<<