Closed
Bug 205867
Opened 22 years ago
Closed 20 years ago
Bug in NativeEventThread adding listeners
Categories
(Core Graveyard :: Java APIs to WebShell, defect)
Tracking
(Not tracked)
RESOLVED
EXPIRED
People
(Reporter: codykstras, Assigned: joe.chou)
Details
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.3.1) Gecko/20030425
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.3.1) Gecko/20030425
When a listener is added to NativeEventThread (e.g., via EventRegistration2), it
is quite likely to miss the first event that would normally be published to it.
This seems to be because, after NativeEventThread.addListener() leaves its
synchronized block, the next substantive statement executed in the
NativeEventThread run method will be nativeProcessEvent(). If the thread that
originally requested the listener has meanwhile done something that would raise
an event, that event will be processed now. However, the listener is not added
until the block of code after nativeProcessEvent, so the event will not be
published to the listener.
This can probably be fixed by moving the nativeAddListener code block (and
doRemoveListener as well) immediately preceding the call to nativeProcessEvent.
This way the listener will be added after it exits its synchronized block, as
soon as the main thread proc reenters its synchronized block (i.e., before any
more events can be published.)
Reproducible: Sometimes
Steps to Reproduce:
1. Start a BrowserControlCanvas in a Java window.
2. Use EventRegistration to add a DocumentLoadListener.
3. Immediately use Navigation.loadUrl() to load a page.
Actual Results:
Most of the time, the DocumentLoadListener does not receive the document start
notification for the newly loaded document.
Expected Results:
After EventRegistration.addDocumentLoadListener() returns, the caller should be
assured that events caused by subsequent actions will be published.
Comment 1•20 years ago
|
||
This is an automated message, with ID "auto-resolve01".
This bug has had no comments for a long time. Statistically, we have found that
bug reports that have not been confirmed by a second user after three months are
highly unlikely to be the source of a fix to the code.
While your input is very important to us, our resources are limited and so we
are asking for your help in focussing our efforts. If you can still reproduce
this problem in the latest version of the product (see below for how to obtain a
copy) or, for feature requests, if it's not present in the latest version and
you still believe we should implement it, please visit the URL of this bug
(given at the top of this mail) and add a comment to that effect, giving more
reproduction information if you have it.
If it is not a problem any longer, you need take no action. If this bug is not
changed in any way in the next two weeks, it will be automatically resolved.
Thank you for your help in this matter.
The latest beta releases can be obtained from:
Firefox: http://www.mozilla.org/projects/firefox/
Thunderbird: http://www.mozilla.org/products/thunderbird/releases/1.5beta1.html
Seamonkey: http://www.mozilla.org/projects/seamonkey/
Comment 2•20 years ago
|
||
This bug has been automatically resolved after a period of inactivity (see above
comment). If anyone thinks this is incorrect, they should feel free to reopen it.
Status: UNCONFIRMED → RESOLVED
Closed: 20 years ago
Resolution: --- → EXPIRED
Updated•13 years ago
|
Product: Core → Core Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•