Closed Bug 213234 Opened 22 years ago Closed 22 years ago

RealPlayer plugin doesn't register though rpnp.so is in plugins directory

Categories

(Plugins Graveyard :: RealPlayer (Real), defect)

x86
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INVALID

People

(Reporter: lweaver, Assigned: peterlubczynski-bugs)

Details

Attachments

(1 obsolete file)

User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030701 Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4) Gecko/20030701 I installed the current version of Realplayer 8 (rp8_linux20_libc6_i386_cs2_rpm) and copied rpnp.so into /usr/lib/mozilla/plugins, but "about plugins" doesn't show the plugin when browser is stopped and restarted. Reproducible: Always Steps to Reproduce: 1.Install RealPlayer 8 2.copy /usr/lib/RealPlayer8/rpnp.so to /usr/lib/mozilla/plugins 3.Restart browser and check "About Plugins" in Help menu Actual Results: All other plugins were displayed, but not rpnp.so Expected Results: rpnp.so should have been shown.
remove ~/.mozilla/pluginreg.dat and restart mozilla.
After much debugging, this appear to be a problem with the build the reporter is using from his current distribution provider. If the moz build is compiled with gcc 3.x, the __pure_virtual function no longer exists for rpnp.so to resolve. The error message in the strace shows: write(2, "LoadPlugin: failed to initialize shared library /usr/lib/mozilla/plugins/rpnp.so [/usr/lib/mozilla/plugins/rpnp.so: undefined symbol: __pure_virtual]\n", 150) = 150 Use a gcc-2.95.x compiled mozilla.
A obvious hack (i've posted to other mozilla bugs) to get around this problem is so: Find an libgcc.a from a gcc-2.95.x compiler, and then % ld -shared -o rpnphack.so \ /full/path/to/RealPlayer/rpnp.so \ /some/path/to/an/old/libgcc.a and then use rpnphack.so in your plugin directory. I do not condone this method, but it doeswork.
Apparently reporter mentioned to me that this was an official build from the mozilla site and no instructions or warnings to the contrary in the README. Someone needs to add this to the README.
This is a problem across the board for plugins compiled with gcc 2.9x. The release notes talk about it for Java and Flash....
Status: UNCONFIRMED → RESOLVED
Closed: 22 years ago
Resolution: --- → INVALID
Due to limitations of JVM class format, the patch clearly adds restrictions to complexity of script code that optimizer can handle since now all the constants and strings goes into single file. But such additional restrictions are not that bad since the patch does not affect the major restriction of restricting byte code size for methods to 64K. The test case generates a JS source of the form function f1(n) { return n; } function f2(n) { return f1(n); } function f3(n) { return f2(n); } ... function f<N>(n) { return f<N-1>(n); } f<N>(<some-value>); and then compile/execute it via "var code = new Script(); code()" since eval can not be used as Rhino uses interpreter mode for it. It turned out that before patch the maximum value for N with optimization level 0 was 2847 before JVM refused to load the file and after it actually increased to 2853. The limit came from the code for script body that has to instantiate N different functions and the patch made that slightly more compact that explains the reason for the limit increase. Of cause a mixture of top-level functions and nested ones would show the patch limitations since without the patch nested functions will be initialized in a separated classes, but still a limit of 2500 functions per script seems reasonable.
Comment on attachment 130527 [details] Test case to check for class file limitations. Please ignore the previous attachment, it was for another bug!.
Attachment #130527 - Attachment is obsolete: true
(In reply to comment #3) Sounds really good, and apparently works well enough that it's all I can find on Google.com. :) But on my system, this hack causes Firefox 0.8 to crash when I open a page containing a Realplayer clip. Any ideas what the problem is? The old version of GCC I'm using is 2.95.3.
Works perfectly for me. OS mandrake_10. Mozilla Firefox-0.8. RealPlayer8 I also downloaded bugfix pack from real: http://realforum.real.com/cgi-bin/unixplayer/showthreaded.pl?Cat=&Board=announcements&Number=3128&page=0&view=collapsed&sb=5 Copied rpnp.so to firefox plugins. everything is working.
Component: Plug-ins → RealPlayer (Real)
Product: Core → Plugins
QA Contact: bmartin → real-player
Version: Trunk → unspecified
Product: Plugins → Plugins Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: