Closed Bug 274281 Opened 20 years ago Closed 20 years ago

[BeOS] BeOS lets events stay in port through the 'restarts' in LaunchChild causing crashes on faulty events.

Categories

(Toolkit :: Startup and Profile System, defect)

x86
BeOS
defect
Not set
critical

Tracking

()

RESOLVED FIXED

People

(Reporter: thesuckiestemail, Assigned: thesuckiestemail)

References

Details

(Keywords: crash)

Attachments

(2 files, 5 obsolete files)

User-Agent:       Mozilla/5.0 (BeOS; U; BeOS BePC; en-US; rv:1.7.5) Gecko/20041212 Firefox/1.0
Build Identifier: Mozilla/5.0 (BeOS; U; BeOS BePC; en-US; rv:1.7.5) Gecko/20041212 Firefox/1.0

In plevent.c as well as in nsAppShell BeOS always tries to reuse a port for
eventqueues if it's open. As the port survives the 'restarts' in LaunchChild it
may (and does) contain events with faulty pointers. This causes Firefox to crash
after profile creation.

Reproducible: Always
Steps to Reproduce:
1. Remove any current profile for Firefox
2. Launch Firefox, and see it crash.


Actual Results:  
Firefox crashes after profile creation.

Expected Results:  
Firefox should have launched.

MethodInfo::Invoke(void):
Invoke__10MethodInfo:
+001e ef0cd19a: * 388b movl (%eax), %edi
firefox-bin:sc
frame retaddr
fcffbe5c ef0cbdd2 nsAppShell::Run(void) + 0000013e
fcffbecc ee6cf361 nsAppShellService::Run(void) + 00000051
fcffbf0c 80020822 xre_main(int, char **, nsXREAppData const *) + 00001f32
Blocks: 266252
Attached patch First part: plEvent patch (obsolete) — Splinter Review
Better way to handle the port in plevent.c. BeOS only changes, as it's inside
ifdefs.
Attached patch Second part: nsAppShell patch (obsolete) — Splinter Review
Better way of setting upp the port in nsAppShell.
Attachment #168537 - Flags: review?(sergei_d)
Attachment #168540 - Flags: review?(sergei_d)
Tqh, what do you think about fact that plevent and nsAppShel do use atm port
with different capacities?
(In reply to comment #3)
> Tqh, what do you think about fact that plevent and nsAppShel do use atm port
> with different capacities?

Don't they use the same port? It looks so to me.
Assignee: bsmedberg → thesuckiestemail
Attachment #168537 - Attachment is obsolete: true
Attachment #168540 - Attachment is obsolete: true
Comment on attachment 168537 [details] [diff] [review]
First part: plEvent patch

removing review on old patches.
Attachment #168537 - Flags: review?(sergei_d) → review-
Attachment #168540 - Flags: review?(sergei_d) → review-
Attachment #168544 - Flags: review?(sergei_d)
Attachment #168545 - Flags: review?(sergei_d)
Attachment #168544 - Attachment is obsolete: true
Attachment #168545 - Attachment is obsolete: true
Comment on attachment 168546 [details] [diff] [review]
plEvent patch with better formatting and comments

r=sergei_d@fi.tartu.ee

I think we need here either sr and approval too, inspite BeOS-only character of
changes, as this file is outside BeOS folders
Attachment #168546 - Flags: review+
Comment on attachment 168548 [details] [diff] [review]
nsAppShell patch w better formatting and comments

r=sergei_d@fi.tartu.ee

Pure BeOS-port patch.
No need for sr.
Attachment #168548 - Flags: review+
Comment on attachment 168546 [details] [diff] [review]
plEvent patch with better formatting and comments

sr?
Attachment #168546 - Flags: superreview?(shaver)
Comment on attachment 168546 [details] [diff] [review]
plEvent patch with better formatting and comments

>+    	if(self->eventport < 0) { 
>+              self->eventport = create_port(200, portname);
>+            }

Indentation here needs to be made sane.  Otherwise, this looks
like it can only affect BeOS, so I will happily stamp on the
basis of sergei's review.
Attachment #168546 - Flags: superreview?(shaver) → superreview+
Attachment #168546 - Attachment is obsolete: true
Checking in widget/src/beos/nsAppShell.cpp;
/cvsroot/mozilla/widget/src/beos/nsAppShell.cpp,v  <--  nsAppShell.cpp
new revision: 1.27; previous revision: 1.26
done
Checking in xpcom/threads/plevent.c;
/cvsroot/mozilla/xpcom/threads/plevent.c,v  <--  plevent.c
new revision: 1.45; previous revision: 1.44
done


please mark fixed if it is.
Status: NEW → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
Keywords: crash
Product: Firefox → Toolkit
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: