bearermanagement/mpm/src/mpmserversession.cpp
changeset 60 a9c709db68db
parent 53 4af712113915
child 66 ed07dcc72692
--- a/bearermanagement/mpm/src/mpmserversession.cpp	Wed Aug 18 10:10:23 2010 +0300
+++ b/bearermanagement/mpm/src/mpmserversession.cpp	Thu Sep 02 20:50:05 2010 +0300
@@ -913,7 +913,10 @@
         //Display confirm dialog only if we are moving to cellular IAP
         if ( MyServer().CommsDatAccess()->CheckWlanL( iMigrateIap ) == ENotWlanIap )
             {
-            if ( !( iIapSelection->MpmConnPref().NoteBehaviour() & TExtendedConnPref::ENoteBehaviourConnDisableQueries ) )
+            // Check that connection preferences don't deny queries, and
+            // enough time has elapsed from the last query cancelled by the user.
+            if ( !( iIapSelection->MpmConnPref().NoteBehaviour() & TExtendedConnPref::ENoteBehaviourConnDisableQueries ) &&
+                 !MyServer().IsConnPermQueryTimerOn() )
                 {
                 if ( MyServer().RoamingWatcher()->RoamingStatus() == EMPMInternationalRoaming )
                     {
@@ -1015,6 +1018,10 @@
         {
         if( aResponse == EMsgQueryCancelled )
             {
+            // User cancelled the connection permission query,
+            // don't try again until the timer expires.
+            MyServer().StartConnPermQueryTimer();
+            
             if( !aReconnect )
                 {
                 // Send a preferred IAP notification