Index: sources/storage/DriveWatcher.cpp =================================================================== diff -u -rc421ddadef2ade71d3abe269493a84b12b85296b -r8824bacaeb6cb2479cd2ea84cd52a69ba38a65ce --- sources/storage/DriveWatcher.cpp (.../DriveWatcher.cpp) (revision c421ddadef2ade71d3abe269493a84b12b85296b) +++ sources/storage/DriveWatcher.cpp (.../DriveWatcher.cpp) (revision 8824bacaeb6cb2479cd2ea84cd52a69ba38a65ce) @@ -227,8 +227,13 @@ static qint64 mOAvailable; qint64 mCAvailable; mCIsReady = driveSpaceCheck(Storage::SDCard_Base_Path_Name, mCTotal, mCAvailable); - mPercent = (100 * mCAvailable) / mCTotal; + if (! mCIsReady ) { + emit didSDCardSpaceRemove(); + return; + } + mPercent = mCTotal ? ((100 * mCAvailable) / mCTotal) : 0; + if (mOIsReady == mCIsReady && mOTotal == mCTotal && mOAvailable == mCAvailable && Index: sources/storage/DriveWatcher.h =================================================================== diff -u -red85c796c2e3bd73aeda374d9a109750bd7732e3 -r8824bacaeb6cb2479cd2ea84cd52a69ba38a65ce --- sources/storage/DriveWatcher.h (.../DriveWatcher.h) (revision ed85c796c2e3bd73aeda374d9a109750bd7732e3) +++ sources/storage/DriveWatcher.h (.../DriveWatcher.h) (revision 8824bacaeb6cb2479cd2ea84cd52a69ba38a65ce) @@ -109,6 +109,12 @@ */ void didSDCardSpaceChange(bool vReady, qint64 vTotal, qint64 vAvailable, quint8 vPercent); + /*! + * \brief didSDCardSpaceRemove + * \details If sdcard removed or is not present this siganl will emit. + */ + void didSDCardSpaceRemove(); + private slots: // ----- usb void usbCheck();