Closed Bug 14170 Opened 26 years ago Closed 26 years ago

OJI causes service manager leak

Categories

(Core Graveyard :: Java: OJI, defect, P1)

All
Windows NT
defect

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: vidur, Assigned: edburns)

References

Details

Attachments

(1 file)

It seems that the NSGetFactory for the OJI DLL maintains a reference to the service manager (http://lxr.mozilla.org/seamonkey/source/modules/oji/src/nsCJVMManagerFactory.cp p#112) but never releases it. The resulting service manager leak results in many more downstream leaks.
Priority: P3 → P1
Assignee: drapeau → edburns
*** Bug 8178 has been marked as a duplicate of this bug. ***
Hmm... I don't understand why we need to cache a global reference to the service manager. It is only used in one method, NSGetFactory().
Status: NEW → ASSIGNED
Target Milestone: M11
Actually, it's used in other files in the same module (see JVM_GetJVMMgr(), for example).
How do I obtain a reference to the ServiceManager on demand? There is no case when I can release it so I could implement a strategy where I just re-obtain and release it every time I need to use it. Can I just save the nsIServiceManager reference I receive from NSGetFactory()?
Instead of asking for the ServiceManager and invoking methods from it, why can't I just use nsServiceManeger static methods, as is done in all the files returned in the query http://lxr.mozilla.org/mozilla/search?string=ServiceManager Ed
Status: ASSIGNED → RESOLVED
Closed: 26 years ago
Resolution: --- → FIXED
Warren beat me to the punch.
Status: RESOLVED → VERIFIED
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: