imagehandlingutilities/thumbnailmanager/thumbnailserver/src/thumbnailtaskprocessor.cpp
branchRCL_3
changeset 11 dea39715fc05
parent 5 82749d516180
child 24 f0aa341a25bf
--- a/imagehandlingutilities/thumbnailmanager/thumbnailserver/src/thumbnailtaskprocessor.cpp	Mon Mar 15 12:41:55 2010 +0200
+++ b/imagehandlingutilities/thumbnailmanager/thumbnailserver/src/thumbnailtaskprocessor.cpp	Wed Mar 31 22:04:49 2010 +0300
@@ -221,7 +221,6 @@
                 TThumbnailRequestId id = task->RequestId().iRequestId;
                 
                 // Task is already running, canceled first
-                task->ResetMessageData();
                 task->Cancel();
                 delete task;
                 iTasks.Remove( i );
@@ -273,7 +272,6 @@
             TThumbnailRequestId id = task->RequestId().iRequestId;
             
             // Task is already running, canceled first
-            task->ResetMessageData();
             task->Cancel();
             delete task;
             iTasks.Remove( i );
@@ -325,6 +323,7 @@
     iActiveTask = NULL;
     TInt priority( KMinTInt );
     TInt taskPriority;
+    TBool processingDaemonTasksOnly(ETrue);
     
 #ifdef _DEBUG
     TN_DEBUG2( "CThumbnailTaskProcessor::TASKPROCESSOR-COUNTER---------- in, Tasks = %d", iTasks.Count() );
@@ -351,6 +350,15 @@
                     iActiveTask = task;
                     }
                 }
+            
+            if ( processingDaemonTasksOnly && task->GetMessageData().Handle())
+                {
+                    if(task->GetMessageData().Identity() != KDaemonUid )
+                        {
+                        TN_DEBUG1( "CThumbnailTaskProcessor::RunL() processingDaemonTasksOnly = EFalse" );
+                        processingDaemonTasksOnly = EFalse; 
+                        }
+                }
             }
         }
 
@@ -364,7 +372,7 @@
 #endif
 
 	//update PS value for Daemon
-    if( iTasks.Count() > 0 && iIdle)
+    if( iTasks.Count() > 0 && iIdle && !processingDaemonTasksOnly)
         {
         //set not idle
         if(iTimerActive)