This Bugzilla instance is deprecated, and most Eclipse projects now use GitHub or Eclipse GitLab. Please see the deprecation plan for details.
Bug 428188 - Tons of exception each time one exits the workbench
Summary: Tons of exception each time one exits the workbench
Status: VERIFIED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 4.4   Edit
Hardware: PC Windows 7
: P3 critical (vote)
Target Milestone: 4.4 M6   Edit
Assignee: Eric Moffatt CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-02-14 07:06 EST by Dani Megert CLA
Modified: 2014-02-20 06:04 EST (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dani Megert CLA 2014-02-14 07:06:30 EST
N20140213-2000.


Tons of this exception each time one exits the workbench:


!ENTRY org.eclipse.equinox.event 4 0 2014-02-14 13:01:13.730
!MESSAGE Exception while dispatching event org.osgi.service.event.Event [topic=org/eclipse/e4/ui/renderer/requestEnablementUpdate] to handler org.eclipse.e4.ui.internal.di.UIEventObjectSupplier$UIEventHandler@5fc658bd
!STACK 0
org.eclipse.swt.SWTException: Device is disposed
	at org.eclipse.swt.SWT.error(SWT.java:4441)
	at org.eclipse.swt.SWT.error(SWT.java:4356)
	at org.eclipse.swt.SWT.error(SWT.java:4327)
	at org.eclipse.swt.widgets.Display.error(Display.java:1258)
	at org.eclipse.swt.widgets.Display.syncExec(Display.java:4728)
	at org.eclipse.e4.ui.internal.workbench.swt.E4Application$1.syncExec(E4Application.java:209)
	at org.eclipse.e4.ui.internal.di.UIEventObjectSupplier$UIEventHandler.handleEvent(UIEventObjectSupplier.java:47)
	at org.eclipse.equinox.internal.event.EventHandlerWrapper.handleEvent(EventHandlerWrapper.java:197)
	at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:197)
	at org.eclipse.equinox.internal.event.EventHandlerTracker.dispatchEvent(EventHandlerTracker.java:1)
	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)
Comment 1 Eric Moffatt CLA 2014-02-14 11:22:54 EST
Committed:

http://git.eclipse.org/c/platform/eclipse.platform.ui.git/commit/?id=0c95c52f512149da62850d0933404d643f741d7d

This safes up the UISynchonize so that it won't attempt to forward UI events if there is no UI...
Comment 2 Eric Moffatt CLA 2014-02-14 11:28:43 EST
Marking as FIXED...

This was the result of renderers not being 'disposed' during shutdown *before* the display goes away. I've opened bug 428213 to track this...
Comment 3 Dani Megert CLA 2014-02-20 05:34:53 EST
(In reply to Eric Moffatt from comment #2)
> Marking as FIXED...
> 
> This was the result of renderers not being 'disposed' during shutdown
> *before* the display goes away. I've opened bug 428213 to track this...

What made the bug surface in the first place?
Comment 4 Dani Megert CLA 2014-02-20 05:35:22 EST
Verified in N20140219-2000.
Comment 5 Paul Webster CLA 2014-02-20 06:04:30 EST
As part of Bug 427465 one of our renderers (which have always been injected) now used one of our extended object suppliers @UIEventTopic.  But in our shutdown sequence we apparently dispose the display before we dispose/uninject the renderers.

PW