1. 05 Feb, 2014 1 commit
  2. 15 May, 2013 1 commit
  3. 12 Apr, 2013 1 commit
  4. 08 Mar, 2013 1 commit
    • Jim Nelson's avatar
      Memory leak and lost reference tracking: Refs #5306 · 826e9d5f
      Jim Nelson authored
      This patch solves the following memory/resource leak problems:
      
      (a) Gee.TreeSet doesn't drop references when destroyed.  Fixed by
      using a subclass that clears the set when destroyed (exactly same
      as patch made to Gee, however that won't be in distribution for
      awhile.)
      
      (b) Imap.ClientSession was holding refs to CommandResponses after
      they'd been completed.  They're now dropped.
      
      (c) Imap.ClientSessionManager now has an open/close_async() (called
      by Imap.Account.open/close_async()) that drops all ClientSessions.
      
      (d) All classes in Engine (and some in the client) use Geary.BaseObject,
      which uses a static map to track outstanding held references to
      it.  The table is dumped when Geary exits.  Must be enabled with a
      ./configure flag.
      
      Two outstanding memory leaks persist (one for Imap.ResponseCodes and
      another when messages are selected/deselected), so this doesn't close
      the ticket, but testing and use has shown these changes to make a huge
      improvement on memory usage and reducing crashes.
      826e9d5f
  5. 16 Aug, 2012 1 commit