Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 345304

Summary: Browser ProgressListener.completed() fires multiple times during a single load
Product: [Eclipse Project] Platform Reporter: Dean Roberts <dean.t.roberts>
Component: SWTAssignee: Grant Gayed <grant_gayed>
Status: CLOSED WONTFIX QA Contact:
Severity: normal    
Priority: P3 CC: ichai.luzon, kennoji
Version: 4.1   
Target Milestone: ---   
Hardware: PC   
OS: Windows 7   
Whiteboard: stalebug
Attachments:
Description Flags
Snipit demonstrating the problem none

Description Dean Roberts CLA 2011-05-10 13:20:03 EDT
Build Identifier: 3.7.0  I20110426-2000

On Windows 7 64 bit with IE 8.0.7601.17514 installed the attached snippet will show that the ProgressListener.completed() is fired twice during a single load.  The first time it is fired the attempt to .execute() a JavaScript function fails, the 2nd time the event is fired it works.

This is similar but not exactly the same as the problem I showed Grant earlier today.  The issue I showed grant had multiple firings with the execute() failing each time, while the execute() works when called outside of the completed() event.

Nevertheless, this is a much simpler test case and is likely related to the 2nd problem.


Reproducible: Always

Steps to Reproduce:
Run the attached snippet.  See that the completed event is fired twice and that the 1st time it is fired the browser is not capable of successfully executing the JavaScript call.
Comment 1 Dean Roberts CLA 2011-05-10 13:21:38 EDT
Created attachment 195248 [details]
Snipit demonstrating the problem
Comment 2 Grant Gayed CLA 2012-05-29 15:28:49 EDT
*** Bug 379494 has been marked as a duplicate of this bug. ***
Comment 3 Grant Gayed CLA 2012-05-29 16:17:37 EDT
I believe this is a bug in the IBM JRE, because this works fine with the 64-bit Oracle JRE 6u32.  Bug 343550 is similar.
Comment 4 Grant Gayed CLA 2012-05-29 16:18:49 EDT
To clarify, it works fine with the 32-bit IBM JRE, and with the 32/64-bit JREs from Oracle, it's just the 64-bit IBM JRE that shows the problem.
Comment 5 ichai luzon CLA 2012-12-18 05:43:51 EST
Hi All

With the current implementation the globalDispatch is stored on the first NavigateComplete2 event and reseted when the DocumentComplete event is received on the "main document"(class IE line 654 and 546).
In some pages that contain many iframes, when the DocumentComplete  event occurs on the main document the browser is sending the NavigateComplete2 on some internal iframe and the event is identified as main document.
Comment 6 Eclipse Genie CLA 2020-01-06 04:34:37 EST
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet.

If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.

--
The automated Eclipse Genie.