equal
deleted
inserted
replaced
91 data->iRefCount--; |
91 data->iRefCount--; |
92 if ( data->iRefCount <= 0 ) |
92 if ( data->iRefCount <= 0 ) |
93 { |
93 { |
94 // destroy the singleton and free TLS |
94 // destroy the singleton and free TLS |
95 delete data; |
95 delete data; |
|
96 data = NULL; |
96 UserSvr::DllFreeTls( KHarvesterEventManagerTLSKey ); |
97 UserSvr::DllFreeTls( KHarvesterEventManagerTLSKey ); |
97 } |
98 } |
98 } |
99 } |
99 } |
100 } |
100 |
101 |
437 { |
438 { |
438 serverQueueHandle = observer->iQueuePtr->Handle(); |
439 serverQueueHandle = observer->iQueuePtr->Handle(); |
439 |
440 |
440 iRegisteredObservers.Remove( i ); |
441 iRegisteredObservers.Remove( i ); |
441 delete observer; |
442 delete observer; |
|
443 observer = NULL; |
442 } |
444 } |
443 // Find if any other observer is using the same queue |
445 // Find if any other observer is using the same queue |
444 else |
446 else |
445 { |
447 { |
446 otherObserverFound = ETrue; |
448 otherObserverFound = ETrue; |
466 { |
468 { |
467 THarvesterEventQueue* queue = iEventQueues[mid]; |
469 THarvesterEventQueue* queue = iEventQueues[mid]; |
468 iEventQueues.Remove( mid ); |
470 iEventQueues.Remove( mid ); |
469 queue->Close(); |
471 queue->Close(); |
470 delete queue; |
472 delete queue; |
|
473 queue = NULL; |
471 break; |
474 break; |
472 } |
475 } |
473 else if( compare > 0 ) |
476 else if( compare > 0 ) |
474 { |
477 { |
475 low = mid + 1; |
478 low = mid + 1; |