equal
deleted
inserted
replaced
123 |
123 |
124 if ( status >= KErrNone && !iShutdown ) |
124 if ( status >= KErrNone && !iShutdown ) |
125 { |
125 { |
126 CHarvesterRequestActive* selectedRequest = NULL; |
126 CHarvesterRequestActive* selectedRequest = NULL; |
127 |
127 |
128 for ( TInt i = 0; i < iRequests.Count(); i++ ) |
128 TInt endIndex( iRequests.Count() ); |
|
129 for ( TInt i = 0; i < endIndex; i++ ) |
129 { |
130 { |
130 CHarvesterRequestActive* request = iRequests[i]; |
131 CHarvesterRequestActive* request = iRequests[i]; |
131 |
132 |
132 // remove completed tasks |
133 // remove completed tasks |
133 if ( !request || (request->RequestCompleted() && !request->IsActive()) ) |
134 if ( !request || (request->RequestCompleted() && !request->IsActive()) ) |
137 request = NULL; |
138 request = NULL; |
138 iRequests.Remove( i ); |
139 iRequests.Remove( i ); |
139 |
140 |
140 // correct the index so that no tasks are skipped |
141 // correct the index so that no tasks are skipped |
141 i--; |
142 i--; |
142 if(i <= -1) |
143 endIndex--; |
143 { |
|
144 i = -1; |
|
145 } |
|
146 |
144 |
147 WRITELOG( "CHarvesterRequestQueue::RunL() - removing completed request"); |
145 WRITELOG( "CHarvesterRequestQueue::RunL() - removing completed request"); |
148 } |
146 } |
149 // select priorised task |
147 // select priorised task |
150 else |
148 else |
231 { |
229 { |
232 CHarvesterRequestActive* request = iRequests[i]; |
230 CHarvesterRequestActive* request = iRequests[i]; |
233 if( request ) |
231 if( request ) |
234 { |
232 { |
235 request->Cancel(); |
233 request->Cancel(); |
|
234 request->iRequestQueue = NULL; |
236 } |
235 } |
237 } |
236 } |
238 } |
237 } |
239 |
238 |
240 |
239 |