equal
deleted
inserted
replaced
186 // CSipAlrMonitor::FreeResources |
186 // CSipAlrMonitor::FreeResources |
187 // ----------------------------------------------------------------------------- |
187 // ----------------------------------------------------------------------------- |
188 // |
188 // |
189 void CSipAlrMonitor::FreeResources ( MSipAlrObserver& aObserver ) |
189 void CSipAlrMonitor::FreeResources ( MSipAlrObserver& aObserver ) |
190 { |
190 { |
191 CSipAlrSnapMonitor* monitor= 0; |
|
192 for ( TInt i = iSnapMonitors.Count()-1; i >= 0; i-- ) |
191 for ( TInt i = iSnapMonitors.Count()-1; i >= 0; i-- ) |
193 { |
192 { |
194 TBool last = iSnapMonitors[i]->DetachObserver ( aObserver ); |
193 TBool last = iSnapMonitors[i]->DetachObserver ( aObserver ); |
195 if ( last ) |
194 if ( last ) |
196 { |
195 { |
197 monitor = iSnapMonitors[i]; |
196 delete iSnapMonitors[i]; |
198 iSnapMonitors.Remove(i); |
197 iSnapMonitors.Remove ( i ); |
199 delete monitor; |
|
200 monitor = NULL; |
|
201 PROFILE_DEBUG1( "CSipAlrMonitor::FreeResources monitor deleted" ) |
198 PROFILE_DEBUG1( "CSipAlrMonitor::FreeResources monitor deleted" ) |
202 } |
199 } |
203 } |
200 } |
204 iSnapMonitors.Compress(); |
|
205 } |
201 } |
206 |
202 |
207 // ----------------------------------------------------------------------------- |
203 // ----------------------------------------------------------------------------- |
208 // CSipAlrMonitor::FindSnapMonitor |
204 // CSipAlrMonitor::FindSnapMonitor |
209 // ----------------------------------------------------------------------------- |
205 // ----------------------------------------------------------------------------- |