Changes between Initial Version and Version 4 of Ticket #529


Ignore:
Timestamp:
Jul 12, 2008 9:23:37 PM (11 years ago)
Author:
bennylp
Comment:

Fixed in r2127 and r2128:

  • Call pjsip_tsx_terminate() in transaction layer stop()
  • Split the module unloading sequence into two stages: first we call stop() to all modules, then we unload() all modules.

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #529

    • Property Status changed from new to closed
    • Property Summary changed from Memory leak with the timer entry on Symbian to Memory leak on Symbian and possibly handle leaks on all platforms when application exits while transactions have not been terminated
    • Property Priority changed from normal to major
    • Property Milestone changed from release-0.9.0 to release-0.9.5
    • Property Resolution changed from to fixed
  • Ticket #529 – Description

    initial v4  
    1 Memory leak will occur when the application exits while there is still pending timer entry in the timer heap. This happens because some objects (e.g. sip_transaction) may refuse to be destroyed on certain cases. 
    2  
    3 There are two potential solutions for this: 
    4  1. SIP transaction should always allow destroy request. 
    5  1. Timer heap should maintain list of active timer entries, and destroy these entries when the timer heap is destroyed. 
    6  
     1When application exits, all transactions will be destroyed. However the transaction does not emit termination event to the transaction user (mostly dialog), thus these higher level objects will not be destroyed.