Closed Bug 44754 Opened 25 years ago Closed 24 years ago

NS_PLUGIN_CID should not exist

Categories

(Core Graveyard :: Plug-ins, defect, P3)

defect

Tracking

(Not tracked)

VERIFIED WONTFIX

People

(Reporter: braden, Assigned: serhunt)

References

Details

(Keywords: arch, topembed+)

Attachments

(1 file)

CID-in-the-IDL badness aside, I can't think of any reason why NS_PLUGIN_CID (in nsIPlugin.idl) should exist at all. Each plug-in should have its own CID.
Ignore. We're abandoning the idl stuff.
Status: NEW → RESOLVED
Closed: 25 years ago
Resolution: --- → WONTFIX
Reopening. nsIPlugin.h exhibits the same problem.
Status: RESOLVED → REOPENED
Resolution: WONTFIX → ---
Reassigning to av.
Assignee: warren → av
Status: REOPENED → NEW
Keywords: arch
Not a Netscape 6 RTM blocker. FUTURE. This bug has been marked Future because the Netscape engineer it is assigned to is overburdened.
Target Milestone: --- → Future
It looks like the only thing that this ID is used for is for calling NSGetFactory; and there it's a placeholder--there's no reason a plugin would need to check the value of the ID. NSGetFactory has been deprecated for some time now. Perhaps we could drop-kick this code that calls it altogether?
Attached patch Proposed patchSplinter Review
This patch removes the definition of NS_PLUGIN_CID, as well as code that calls NSGetFactory on plugin modules.
Keywords: patch, review
Blocks: 77151
Keywords: topembed
Keywords: mozilla1.0+
plussing and resetting target milestone. let's rid ourselves of the CID in IDL, bad practice and exposes us.
Keywords: topembedtopembed+
Target Milestone: Future → ---
Does Real player still function with attachment 28935 [details] [diff] [review]?
Peter: I don't know and I'm not able to test it. I guess you have a reason to suspect that it wouldn't; does RealPlayer use NSGetFactory?
YES!! Please leave NSGetFactory support for the plugins folder. Real Player on Windows (and Mac) are both NSGetFactory type plugins. JRE 1.3 is also. You can test RealPlayer by copying over nppl3260.dll and xpt to the plugins folder (from the components folder of a NS commercial build full install) and try playing Netscape radio.
No, I can't. I use Linux. (I can test the OJI plugin; but I think it's moot...) I thought NSGetFactory had been deprecated for, oh, maybe a couple of *years* now. I know it had been considered obsolete for some time when I wrote this patch (a year ago). Is there a plan for migrating from these obsolete APIs (NSGetFactory and friends, now the XPCOM plugin API as well)? I think the requirement for supporting NSGetFactory is a showstopper for fixing this bug. Since NSGetFactory passes NS_PLUGIN_CID to the plugin, NS_PLUGIN_CID is part of the interface that Mozilla is apparently committed to supporting. Recommend WONTFIX.
I also think this bug should be WONTFIX. Let's not touch anything that can break with the depricated XPCOM plugin API while we still have MAJOR plugins like Real and Java using nsGetFactory. Check JRE 1.3's entry points on Linux. I suspect it is doing the same thing as Windows. It's bad enough that nsGetFactory support is now disabled for the components folder and Real is currently broken because that's where its installer had been dropping the DLL for years. Real also won't fix Real 8's installer so we need to come up with some installation magic or another creative idea. The plan now for plugins is to use the old NPAPI but it's too late for some exsisting plugins. AFAIK, Real has no plans to change from nsGetFactory so we must keep it alive in the plugins folder. As for Java, Sun's new JRE 1.4 has switched to using the new nsGetModule but that has been a real mess! That plugin doesn't install at all with the current trunk because they used unfrozen interfaces as regexpcom fails. nsGetFactory seems to have far less complications for XPCOM plugins in the "plugins" folder than using nsGetModule and needs to stay around for Real. What's wrong with leaving it as it is?
Status: NEW → RESOLVED
Closed: 25 years ago24 years ago
Resolution: --- → WONTFIX
To further add to the idea the NSGetFactory support not be dropped. We (the Java Plugin group at sun) have recieved a request from Netscape (Arun Ranganathan aruner@netscape.com) that the 1.4.0 plugin not be installed via regxpcom but that we revert back to using NSGetFactory. He is saying we must do in order for Netscape.next/spring/whatever to be bundled with Java 1.4.0. Maybe you guys should all get together and hash this out.
Dropping NSGetFactory from Plugins folder would be bad because: 1. RealPlayer 8 won't change. 2. JRE dlls won't work; the existing JRE 1.4.0's patronization of regxpcom isn't working well. Even if they were to use the regxpcom method, component uninstallation is awkward. We're in talks with Real to move away from the deprecated XPCOM API, but this won't be anytime soon. Furthermore, for OJI purposes, the plugins folder ought to have support for NSGetFactory.
marking verif, pls reopen stating a reason, Thx!
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: