idlefw/plugins/devicestatus/src/aidevicestatusplugin.cpp
branchRCL_3
changeset 19 edd621764147
parent 16 b276298d5729
--- a/idlefw/plugins/devicestatus/src/aidevicestatusplugin.cpp	Tue Apr 27 16:57:49 2010 +0300
+++ b/idlefw/plugins/devicestatus/src/aidevicestatusplugin.cpp	Tue May 11 16:30:05 2010 +0300
@@ -53,7 +53,8 @@
 // ----------------------------------------------------------------------------
 //
 CAiDeviceStatusPlugin::CAiDeviceStatusPlugin() 
-    : iResourceOffset( KErrNotFound )   	
+    : iResourceOffset( KErrNotFound ),
+    iRequirePublish( EFalse )
     {
     }
 
@@ -164,6 +165,8 @@
 //
 void CAiDeviceStatusPlugin::FreeResources()
     {
+    iRequirePublish = EFalse;
+
 	if( iResourceOffset >= 0 )
 	    {
 	    CCoeEnv* coe = CCoeEnv::Static();
@@ -202,7 +205,8 @@
 // ----------------------------------------------------------------------------
 //
 void CAiDeviceStatusPlugin::Stop( TStopReason /*aReason*/ )     
-    {    
+    {
+    iRequirePublish = EFalse;
     }
 
 // ----------------------------------------------------------------------------
@@ -216,10 +220,14 @@
         {
         if ( iRequirePublish )
             {
-            TRAP_IGNORE( DoResumeL() );
-            
+            TRAP_IGNORE( DoResumeL() );            
             iRequirePublish = EFalse;
-            }          
+            }
+        else
+            {
+            TRAP_IGNORE( 
+				iEngine->RefreshActivePublishersL( EFalse ) );
+            }
         }
     }