diff --git a/src/Common/Dlgcode.c b/src/Common/Dlgcode.c index 46e7d818..654e29a5 100644 --- a/src/Common/Dlgcode.c +++ b/src/Common/Dlgcode.c @@ -12533,7 +12533,7 @@ wstring FindDeviceByVolumeID (const BYTE volumeID [VOLUME_ID_SIZE], BOOL bFromSe /* not mounted. Look for it in the local drives*/ - if (bFromService || !NeedPeriodicDeviceListUpdate) + if (bFromService) { for (int devNumber = 0; devNumber < MAX_HOST_DRIVE_NUMBER; devNumber++) { @@ -12562,6 +12562,8 @@ wstring FindDeviceByVolumeID (const BYTE volumeID [VOLUME_ID_SIZE], BOOL bFromSe static std::vector volumeIdCandidates; EnterCriticalSection (&csMountableDevices); + if (!NeedPeriodicDeviceListUpdate) + UpdateMountableHostDeviceList (); std::vector newDevices = mountableDevices; LeaveCriticalSection (&csMountableDevices);