Closed
Bug 36170
Opened 24 years ago
Closed 24 years ago
NSPR's shared library loader doesn't properly report errors under beos
Categories
(NSPR :: NSPR, defect, P3)
Tracking
(Not tracked)
VERIFIED
FIXED
4.0.2
People
(Reporter: justin, Assigned: wtc)
Details
Attachments
(2 files)
587 bytes,
patch
|
Details | Diff | Splinter Review | |
3.84 KB,
patch
|
Details | Diff | Splinter Review |
the beos-specific part of the nspr's shared library loader doesn't preserve failure codes, causing a not-very-helpful "No Error" description to be displayed to the user whenever a shared library fails to load, regardless of the actual cause
Reporter | ||
Comment 1•24 years ago
|
||
Assignee | ||
Updated•24 years ago
|
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Assignee | ||
Comment 2•24 years ago
|
||
Thanks for the bug report and the fix. I'm going to propose a different fix for the following reasons: 1. I don't want to mess with errno. NSPR functions should not set errno. I'm going to store the error code in a local variable named oserr. 2. We are not passing the right error code to PR_SetError on Mac and OS/2 either, so I'm going to fix that too.
Assignee | ||
Comment 3•24 years ago
|
||
Assignee | ||
Comment 4•24 years ago
|
||
The patch (id=7758) was checked in on the main trunk. /cvsroot/mozilla/nsprpub/pr/src/linking/prlink.c, revision 3.38. Note that the Mozilla client pulls a branch tag of NSPR, not the tip of NSPR, so the Mozilla client is not getting this fix right now. This fix will be in NSPR 4.1. I do not think it is serious enough to go into the NSPR 4.0.1 patch release. Please let me know if you think the Mozilla client needs the fix right away.
Status: ASSIGNED → RESOLVED
Closed: 24 years ago
Resolution: --- → FIXED
Target Milestone: --- → 4.1
Comment 5•24 years ago
|
||
I would like to see this patch inside the Mozilla client current branch. Reasons is that most newcomers just extract current version and always come back with this one. The other problem being that this is slowing us down on finding what's the reason of the error.
Assignee | ||
Comment 6•24 years ago
|
||
The documentation at http://www-classic.be.com/documentation/be_book/The%20Kernel%20Kit/Images.html#l oad_add_on() says that the only error code that can be returned by load_add_on() is B_ERROR, which is a convenient catchall for general errors. If so, this fix still can't tell you the reason of the load_add_on() failure; it only removes the confusing "No Error" error message.
Reporter | ||
Comment 7•24 years ago
|
||
in this case, the bebook is mistaken - load_add_on() actually does return meaningful error codes, and the patch i submitted did indeed result in proper error messages ("Symbol not found", "No such file or directory", etc.)
Assignee | ||
Comment 8•24 years ago
|
||
OK. That makes sense. Are all BeOS error codes negative numbers? I checked in the fix on the NSPRPUB_RELEASE_4_0_BRANCH /cvsroot/mozilla/nsprpub/pr/src/linking/prlink.c, revision 3.32.4.4 I checked in the fix on the NSPRPUB_CLIENT_BRANCH. /cvsroot/mozilla/nsprpub/pr/src/linking/prlink.c, revision 3.34.2.2
Assignee | ||
Updated•24 years ago
|
Target Milestone: 4.1 → 4.0.1
Reporter | ||
Comment 9•24 years ago
|
||
all beos errors codes are negative numbers (see http://www-classic.be.com/developers/developer_library/headers/be/support/Errors.h for the complete list)...thanks!
Assignee | ||
Updated•24 years ago
|
Target Milestone: 4.0.1 → 4.0.2
Comment hidden (collapsed) |
You need to log in
before you can comment on or make changes to this bug.
Description
•