This changes the nsCookieService singleton fu to AddRef only once, rather than twice (and removes the corresponding Release in the module dtor). The double-addref was making the cookie module stick around until XPCOM starts shutting down modules, which is too late to release things we own (observer service, prefbranch, etc). So we were violating XPCOM shutdown rules without knowing it.
So, the tracemalloc leak stats on Brad should halve. :)
b=209571, r=alecf, sr=darin.
git-svn-id: svn://10.0.0.236/trunk@144084 18797224-902f-48f8-a5cc-f745e15eee43
- moves core cookie code into nsCookieService.{h,cpp}, and kills nsCookies & nsCookieManager
- makes nsCookieService a singleton object that implements nsICookieManager also
- improves mem efficiency of the nsCookie object, and removes unneeded conversions
- adds an nsICookie2 interface to extend the sucky nsICookie.
- fixes a few (unrelated) trivial things while I'm in there (use ->ASCII instead of ->UTF8, and remove some erroneous stuff in nsPermissionManager.h)
cvs removal of nsCookies.{h,cpp} and nsCookieManager.{h,cpp} will follow; to find old blame info and logs for those files, look in attic.
burn the witch!
b=200632, r=alecf, sr=darin.
git-svn-id: svn://10.0.0.236/trunk@143712 18797224-902f-48f8-a5cc-f745e15eee43