Closed Bug 7165 Opened 26 years ago Closed 26 years ago

AppCore/mail session service should be shutdown when all mail/news windows close

Categories

(SeaMonkey :: MailNews: Message Display, defect, P2)

defect

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: alecf, Assigned: scottputterman)

Details

After our AppCore has been XPConnected, we need to merge MsgAppCore and MsgMailSession (since they are both singleton interfaces into messenger) Then, each Messenger-oriented window should include a messenger javascript file that says something like: var messenger = Components["components://netscape/messenger/session"].getService(); Then when a window closes and it's JS context goes away, the "messenger" variable will be dereferenced. When the final window goes away, it should shut down the messenger service, which should shut down the account manager, and so forth. Basically this is the universal "Messenger exits" code....this is a good place to see if we're leaking too.
Status: NEW → ASSIGNED
Target Milestone: M8
Priority: P3 → P2
Time to stop leaks. upping priority
Assignee: alecf → putterman
Status: ASSIGNED → NEW
I think putterman just checked in a bunch of stuff related to this...scott?
Status: NEW → RESOLVED
Closed: 26 years ago
Resolution: --- → FIXED
Yeah, I did. Marking fixed.
OS: Solaris → All
QA Contact: lchiang → ppandit
Hardware: Sun → All
Par, can you or Suresh verify this when you get a chance? Thanks. Also, I think the platform should be All and not Solaris, so I'm changing this.
Status: RESOLVED → VERIFIED
The fix is in /mozilla/mailnews/base/src/nsMessengerBootstrap.cpp::Shutdown() nsresult nsMessengerBootstrap::Shutdown() { nsresult finalrv = NS_OK; nsresult rv; rv = nsService::UnregisterService("component://netscape/appshell/component/messenger" ); if(NS_FAILED(rv)) finalrv = rv; rv = nsServiceManager::UnregisterService("component://netscape/messenger/services/ses sion"); if(NS_FAILED(rv)) finalrv = rv; rv = nsServiceManager::UnregisterService("component://netscape/messenger/biffManager" ); if(NS_FAILED(rv)) finalrv = rv; return finalrv; }
Product: Browser → Seamonkey
You need to log in before you can comment on or make changes to this bug.