Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 313956 - Wiggly mouse problem in Mozilla Browser JS
Summary: Wiggly mouse problem in Mozilla Browser JS
Status: CLOSED WONTFIX
Alias: None
Product: Platform
Classification: Eclipse Project
Component: SWT (show other bugs)
Version: 4.0   Edit
Hardware: PC Linux
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Platform-SWT-Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-05-21 14:13 EDT by Ryan Levering CLA
Modified: 2017-07-04 13:30 EDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ryan Levering CLA 2010-05-21 14:13:23 EDT
Build Identifier: Devhead

This is only reproducible in a loop, so it looks like some intermittent synch/lock problem.  I was using Snippet321 in SWT code, which gives some idea of how the hang is happening (You can see the AJAX response hasn't been reported).  Instead of loading http://eclipse.org, load in a loop (I used a 1000 iteration loop and haven't gotten a non-stick yet) a webpage that executes the following synchronous AJAX on load :

	function loadAjax() {
		var httpRequest = new XMLHttpRequest();
		httpRequest.open('GET', 'htmlContent.html', false);
		httpRequest.send(null);
		document.body.innerHTML = httpRequest.responseText;
	}

Eventually the UI will hang in the middle of the AJAX send on one of the page loads.  Any Display execution requests will hang at this point.  Moving a mouse over the window will unfreeze and complete the AJAX request.  The UI thread is stuck in it's native method call to g_main_context_iteration().

I think it has to do with the JS/Mozilla context not giving up certain UI locks.  I've seen similar behavior with Browser.execute calls to long running JS, but I have a better reproducer for this.

Reproducible: Always

Steps to Reproduce:
1. Create example webpage test.html with listed code executed in a body onLoad attribute and simple test webpage (htmlContent.html) for AJAX response.
2. Load webpage in loop in Snippet321: change setUrl(http://eclipse... to for-loop on setUrl(test.html)
3. Watch UI window, eventually the AJAX response will not be populated on the page
Comment 1 Alexander Kurtakov CLA 2017-07-04 13:30:10 EDT
Mozilla support is removed for 4.8. Default browser engine is webkitgtk now. Please open new bug with details if you still see it with Oxygen.