diff -r f63038272f30 -r 6a1fe72036e3 bluetoothengine/btui/Ecom/src/BTUIPairedDevicesView.cpp --- a/bluetoothengine/btui/Ecom/src/BTUIPairedDevicesView.cpp Mon Jan 18 20:28:57 2010 +0200 +++ b/bluetoothengine/btui/Ecom/src/BTUIPairedDevicesView.cpp Tue Jan 26 12:06:42 2010 +0200 @@ -181,6 +181,8 @@ if(iConstructAsGsPlugin) delete iTabHelper; + CancelDisconnectQueryDlg(); + TRACE_FUNC_EXIT } @@ -1067,13 +1069,14 @@ // Create confirmation query HBufC* stringholder = StringLoader::LoadLC(R_BT_DISCONNECT_FROM, device.iName); - iDisconnectQueryDlg = CAknQueryDialog::NewL(); + if (!iDisconnectQueryDlg) + { + iDisconnectQueryDlg = CAknQueryDialog::NewL(); + } if(iCoverDisplayEnabled) { - CleanupStack::PushL(iDisconnectQueryDlg); iDisconnectQueryDlg->PublishDialogL(ECmdShowDisconnectQuery, KUidCoverUiCategoryBtui); // initializes cover support - CleanupStack::Pop(iDisconnectQueryDlg); CAknMediatorFacade* covercl = AknMediatorFacade(iDisconnectQueryDlg); // uses MOP, so control provided if (covercl) // returns null if __COVER_DISPLAY is not defined @@ -1100,7 +1103,7 @@ // CBTUIPairedDevicesView::CancelDisconnectQueryDlgL // ---------------------------------------------------------- // -void CBTUIPairedDevicesView::CancelDisconnectQueryDlgL() +void CBTUIPairedDevicesView::CancelDisconnectQueryDlg() { TRACE_FUNC_ENTRY @@ -1854,7 +1857,7 @@ if(aErr == KErrDisconnected) { if(iDisconnectQueryDlg && aDevice.iAddr == iDisconnectQueryDevice.iAddr) - CancelDisconnectQueryDlgL(); + CancelDisconnectQueryDlg(); TRACE_FUNC_EXIT return;