Closed
Bug 74938
Opened 23 years ago
Closed 23 years ago
acrobat fails on plugin registration on Linux
Categories
(Core Graveyard :: Plug-ins, defect, P3)
Tracking
(Not tracked)
VERIFIED
FIXED
mozilla0.9.5
People
(Reporter: shrir, Assigned: srgchrpv)
References
()
Details
(Whiteboard: [PDT+] [correctness])
Attachments
(2 files)
4.47 KB,
patch
|
Details | Diff | Splinter Review | |
3.63 KB,
patch
|
serhunt
:
review+
serhunt
:
superreview+
|
Details | Diff | Splinter Review |
Linux only (mac got fixed recently) Steps: 1 Put the nppdf.so file for acrobat plugin inside mozilla plugins folder 2 Go to the url above 3 Observe that the File Save dialog pops up.. (if you do not have acrobat as a helper app configured) 4 typing 'about:plugins' does not list the plugin... expected: acrobat should appear embedded inside the browser window just like on other platforms..
Comment 1•23 years ago
|
||
Since this never has worked, I think this is due to the gtk switch over and Adobe needs to update their plugin. Andrei, thouhts? If so, then Adobe needs to be evanglized.
That's a possibility. But we need to make sure that we at least try to load the plug-in.
Comment 3•23 years ago
|
||
see the same prolem on Solaris. The plugin loading fails during the initializtion process. Immediately after the plugin(nppdf.so) is loaded, nppdf.so's NP_Initialize is called (see the code below). Note that the call to PR_FindSymbol returns a function pointer (not null) but the subsequent call to the returned function fails. The function call, pfnInitialize(&(ns4xPlugin::CALLBACKS),&callbacks), returns a NPError of 4, NPERR_MODULE_LOAD_FAILED_REEOR. /////////////// ns4xPlugin::CreatePllugin NP_PLUGINUNIXINIT pfnInitialize = (NP_PLUGINUNIXINIT)PR_FindSymbol(aLibrary, "NP_Initialize"); if (pfnInitialize == NULL) return NS_ERROR_UNEXPECTED; // XXX Right error? if (pfnInitialize(&(ns4xPlugin::CALLBACKS),&callbacks) != NS_OK){ -->> return NS_ERROR_UNEXPECTED; } //////////////////////////////////////////////////////////
So the library gets loaded and evev an entry point is retreived. Does not look like missing linked libraries. Serge, do you have any ideas what could happen here?
Comment 5•23 years ago
|
||
Changing summary and re-assign to Serge.
Assignee: peterlubczynski → serge
Summary: acrobat does not workas a plugin but works as a helper app → acrobat fails on plugin registration on Linux
Assignee | ||
Comment 6•23 years ago
|
||
av, shrir did unix mozilla ever handles pdf files using acrobat plugin? as I recall it does handle it using helper apps, am I right?
Reporter | ||
Comment 7•23 years ago
|
||
yes, it always worked as a helper app, never embedded as a plugin inside the browser.
Comment 8•23 years ago
|
||
Might this be similar to bug 56464 (RealPlayer plugin only works if Mozilla is compiled using gcc 2.95.2)?
Comment 9•23 years ago
|
||
using a build of gcc 2.95 doesn't solve the problem in this case.
Comment 10•23 years ago
|
||
Figures. No sooner do I say that I can't get acrobat to work in 4.x (in bug 84427), it starts working (albeit on a different box). It still doesn't work in mozilla and I think it may be due to nppdf.so requiring symbols not found in the mozilla tree. Here's the list of undefined symbols referenced by nppdf.so (nm --dynamic nppdf.so) but not found in libc, libdl, libX11 or libXt: CreateQueue DeQueue DestroyQueue EnQueue NPN_GetURLNotify CreateQueue DeQueue DestroyQueue EnQueue NPN_GetURLNotify List generated using: nm --dynamic /usr/lib/netscape/plugins/nppdf.so | grep -v ^0 | sed 's|^ ||' | grep ^U | sed 's|^U ||' > ack # That's 9 spaces in the first sed cat >findlibs<<EOF #!/bin/sh checklist="/lib/libc.so.6 /lib/libdl.so.2 /usr/X11R6/lib/libX11.so /usr/X11R6/lib/libXt.so.6" for l in $checklist; do rm -f found-$l done rm -f found-not for s in `cat $1`; do found=0 for l in $checklist; do nm $l | grep -c $s >/dev/null 2>&1 if [ $? = 0 ]; then echo $s >> found-`basename $l` found=1 break; fi done if [ $found = 0 ]; then echo $s >> found-not fi done EOF # Then sh -x findlibs ack
Comment 11•23 years ago
|
||
I have got the same problem, using the Acrobat 4.05 plugin. It works fine in Netscape 4.77 (by simply dropping nppdf.so in the netscape plugins directory), but not in mozilla build 2001061308.
Assignee | ||
Comment 12•23 years ago
|
||
Assignee | ||
Comment 13•23 years ago
|
||
small notice: to run acrobat reader on linux you have to setenv PATH <wherever acrobat install dir>/bin:$PATH, or equivalent for your shell, then try 'acroread' it should start stand alone reader.
Comment 14•23 years ago
|
||
Wow! Acrobat is now working in the browser window! Thanks for the great effort, serge. Although, there are still some problems with the patch like it doesn't behave correctly on resizing the browser window, I think it worth checking into the trunk. The changes in GetPluginInfo code are likely to help with the long standing problem we have with starting Mozilla when audio device is active, because it will not try to initialize plugins on start up. r=av
Comment 15•23 years ago
|
||
Changing milestone as we have progress here.
Target Milestone: Future → mozilla0.9.5
Comment 16•23 years ago
|
||
The original design was to have ns4xPlugin wrap _all_ interfaces to 4.x plugins. I don't know if that is relevant anymore, maybe av or beard can comment. If it _is_ relevant, than promoting the logic to nsPluginsDirUnix.cpp is not right; we ought to continue to hide 4.x plugin logic from the brave new world. I'd suggest either altering ns4xPlugin::Create() to simply return a wrapped, but un-initialized plugin, or adding a static method to ns4xPlugin that can be used to extract the MIME type given a pLibrary or something. The changes in ns4xPlugin look fine to me.
Comment 17•23 years ago
|
||
This is good point. Although we decided to deprecate the new api (the Mozilla Plugin API as it has been known) and encourage people to stick with old api with some new additions to it for scriptability and access to the browser services (now we are promoting name NPAPI), I think we are still going to keep the Mozilla API in place as some vendors already invested in it and released commercial products based on it. So, the suggestion looks reasonble. I think something like ns4xPlugin::GetPluginInfo will be good to have.
Assignee | ||
Comment 18•23 years ago
|
||
Chris, thank you for comments. I completely agree it's better to keep all legacy (4.x) interfaces in one place, but those stuff is platform specific, and ns4xPlugin.cpp has a lot of #ifdef it's getting difficult to read, maybe it's time to break it by platforms. Sure, I'm going to implement something like static ns4xPlugin::GetPluginInfo for unix.
Comment 19•23 years ago
|
||
Nominating for the branch. This patch is going to fix a long standing and very annoying issue known as "hang on start up when audio device is active".
Keywords: nsbranch
Assignee | ||
Comment 20•23 years ago
|
||
Comment 21•23 years ago
|
||
Well... This sort of parameter overloading may seem confusing, I would prefer a clear flag, but not insisting. r=av.
Assignee | ||
Comment 22•23 years ago
|
||
I agree, but I have strong feeling we have to split ns4xPlugin.cpp by platforms or toolkits, and I do not want to add any platform specific methods into that now.
Comment 23•23 years ago
|
||
nsbranch+ per pdt triage please try to fix it within next couple of weeks
Comment 24•23 years ago
|
||
Attachment 49297 [details] [diff] looks fine; sr=waterson. Let's get a bug on file to break
ns4xPlugin up by platform as serge suggests. I agree that would be a good idea.
Assignee | ||
Comment 25•23 years ago
|
||
can I get PDT+ for check into the branch?
Comment 26•23 years ago
|
||
I was able to view pdf documents in 0.9.3 using the nppdf.so plugin from acrobat, but after switching to 0.9.4, it doesn't work anymore.
Assignee | ||
Comment 27•23 years ago
|
||
Do you mean you were able to run acrobat on unix as helper apps, not in browser window, am I right?
Comment 28•23 years ago
|
||
Adding correctness Status Whiteboard, correct/expected behavior does not occur.
Whiteboard: [correctness]
Updated•23 years ago
|
Whiteboard: [correctness] → [PDT] [correctness]
Assignee | ||
Comment 29•23 years ago
|
||
checked into the trunk modules/plugin/base/src/ns4xPlugin.cpp,v <-- ns4xPlugin.cpp new revision: 1.71; previous revision: 1.70 modules/plugin/base/src/nsPluginsDirUnix.cpp,v <-- nsPluginsDirUnix.cpp new revision: 1.14; previous revision: 1.13
Assignee | ||
Comment 30•23 years ago
|
||
resolve as FIXED
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
Comment 31•23 years ago
|
||
I don't think this was checked into the 0.9.4 branch. Looks like it still needs a PDT+ approval. Reopening...
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Assignee | ||
Comment 32•23 years ago
|
||
that's right, I did not check it into the 094 branch yet
Reporter | ||
Comment 33•23 years ago
|
||
hm..on today's trunk on linux 0924, my acroreader is not getting launched as a plugin. I get an error in the console. 500 Cannot exec acroread or acroexch errorno=2 Acrobat Plugin-Could not launch acrobat
Assignee | ||
Comment 34•23 years ago
|
||
see Comments From serge@netscape.com 2001-09-06 18:44
Assignee | ||
Comment 35•23 years ago
|
||
warning messages like: "Warning: Actions not found: addBookmark, viewBookmark, copy, undefined-key, find, findAgain, history, loadImages, openURL, mailNew, new, openFile, print, exit, reload, saveAs, paste, delete, cut, undo, historyItem, back, forward, abort, PageUp, PageDown Warning: Actions not found: ManagerGadgetNextTabGroup, ManagerGadgetPrevTabGroup, DrawingAreaInput, addBookmark, viewBookmark, copy, undefined-key, find, findAgain, history, loadImages, openURL, mailNew, new, openFile, print, exit, reload, saveAs, paste, delete, cut, undo, historyItem, back, forward, abort, PageUp, PageDown Warning: No action proc named "ManagerGadgetArm" is registered for widget "form" Warning: No action proc named "ManagerGadgetArm" is registered for widget "form" Warning: No action proc named "ManagerGadgetArm" is registered for widget "form" ... are coming from acrobat because it's trying to install 4.x translations which is irrelevant for 6.x browser.
Comment 36•23 years ago
|
||
Shrirang, have you been able to test this in the trunk changing the PATH variable? Need to confirm before getting PDT+ for this.
Reporter | ||
Comment 37•23 years ago
|
||
finally..yes. Awesome, Serge ! I have tested this fix on the linux 0924 trunk and it looks very good. I see the warning messages that serge mentioned above. Pls grant pdt+
Comment 38•23 years ago
|
||
Pls update the Patch Status for both patches. Check it into the branch - PDT+
Whiteboard: [PDT] [correctness] → [PDT+] [correctness]
Assignee | ||
Comment 39•23 years ago
|
||
cannot update attachments status, got error "You are not authorized to edit attachments" :(
Assignee | ||
Comment 40•23 years ago
|
||
checked into the MOZILLA_0_9_4_BRANCH new revision: 1.10.2.1; previous revision: 1.10 new revision: 1.67.2.2; previous revision: 1.67.2.1
Status: REOPENED → RESOLVED
Closed: 23 years ago → 23 years ago
Resolution: --- → FIXED
Attachment #49297 -
Flags: superreview+
Attachment #49297 -
Flags: review+
Reporter | ||
Comment 41•23 years ago
|
||
looks good on today's linux branch (0927). VERIFIED.
Status: RESOLVED → VERIFIED
Updated•2 years ago
|
Product: Core → Core Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•