--- a/harvester/client/src/harvesterrequestqueue.cpp Tue Jan 26 12:13:20 2010 +0200
+++ b/harvester/client/src/harvesterrequestqueue.cpp Tue Feb 02 00:24:33 2010 +0200
@@ -125,7 +125,8 @@
{
CHarvesterRequestActive* selectedRequest = NULL;
- for ( TInt i = 0; i < iRequests.Count(); i++ )
+ TInt endIndex( iRequests.Count() );
+ for ( TInt i = 0; i < endIndex; i++ )
{
CHarvesterRequestActive* request = iRequests[i];
@@ -139,10 +140,7 @@
// correct the index so that no tasks are skipped
i--;
- if(i <= -1)
- {
- i = -1;
- }
+ endIndex--;
WRITELOG( "CHarvesterRequestQueue::RunL() - removing completed request");
}
@@ -233,6 +231,7 @@
if( request )
{
request->Cancel();
+ request->iRequestQueue = NULL;
}
}
}