diff -r a12246c97fcc -r cb96c29156b2 mpxplugins/viewplugins/views/waitnotedialog/src/mpxscanningdialog.cpp --- a/mpxplugins/viewplugins/views/waitnotedialog/src/mpxscanningdialog.cpp Wed Jun 09 09:38:28 2010 +0300 +++ b/mpxplugins/viewplugins/views/waitnotedialog/src/mpxscanningdialog.cpp Mon Jun 21 15:37:19 2010 +0300 @@ -55,6 +55,7 @@ iInitialCount = 0; isCollectionDBChanged = EFalse; iAsyncEvent = ECmdIdle; + iRefreshEnd = EFalse; } @@ -183,11 +184,14 @@ iCancelScan = ETrue; } - // When stop refreshing library, prompt a process waiting dialog. - // Inform user to wait for the updating library. - HBufC* waitText = StringLoader::LoadLC( R_MPX_UPDATING_LIBRARY_TXT ); - DisplayProcessWaitDialogL( R_MPX_GENERIC_WAIT_NOTE, *waitText ); - CleanupStack::PopAndDestroy( waitText ); + if (!iRefreshEnd) + { + // When stop refreshing library, prompt a process waiting dialog. + // Inform user to wait for the updating library. + HBufC* waitText = StringLoader::LoadLC( R_MPX_UPDATING_LIBRARY_TXT ); + DisplayProcessWaitDialogL( R_MPX_GENERIC_WAIT_NOTE, *waitText ); + CleanupStack::PopAndDestroy( waitText ); + } } else if( iScanningError >= KErrNone ) { @@ -354,6 +358,7 @@ } if( op == EMcMsgRefreshStart ) { + iRefreshEnd = EFalse; isCollectionDBChanged = EFalse; MPX_DEBUG1("refreshStart store the initial count"); iInitialCount = songTotal; @@ -396,6 +401,7 @@ } }; + iRefreshEnd = ETrue; // If cancel was pressed, iWaitDialog is NULL // if( iWaitDialog )