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

Bug 330861

Summary: Save Failed, Graphic is disposed
Product: [Eclipse Project] Platform Reporter: Lyle Ziegelmiller <lyle_z>
Component: IDEAssignee: Platform-UI-Inbox <Platform-UI-Inbox>
Status: CLOSED WORKSFORME QA Contact:
Severity: major    
Priority: P3 CC: daniel_megert, lyle_z, remy.suen
Version: 3.6.1   
Target Milestone: ---   
Hardware: PC   
OS: Windows Vista   
Whiteboard:
Attachments:
Description Flags
screen shots
none
.log
none
From clipboard - Eclipse Installation Details --> Configuration none

Description Lyle Ziegelmiller CLA 2010-11-22 17:00:11 EST
Build Identifier: Build id: 20100917-0705

On many occasions, I'll be editing or trying to save, and Eclipse will lock up and display a distorted view of the screen. An error message pops up which says, "Save Failed", and on the next line "Graphic is disposed". The IDE is useless at this point, so I attempt to restart it. When I do, it says it can't read the initialization file, and so I have to rearrange all the windows from scratch. This time however, I demaximized Eclipse, and then things seemed a lot better, and I was able to restart it.

This does seem some what similar to other reported bugs, but they seem to have just languished and have been forgotten. Some of them were opened in 2005, and haven't been updated since 2007.

I never had this problem with the previous release of Eclipse - Europa, but I frequently have it with this version - Helios.

Reproducible: Sometimes
Comment 1 Lyle Ziegelmiller CLA 2010-11-22 17:04:20 EST
Created attachment 183615 [details]
screen shots

Screen shot of window when error is occurring.
Comment 2 Lyle Ziegelmiller CLA 2010-11-22 17:05:19 EST
Created attachment 183616 [details]
.log

.log file elaborating on what went wrong when error occurred.
Comment 3 Lyle Ziegelmiller CLA 2010-11-22 23:24:53 EST
Just got another one when I clicked on the @ sign to show javadoc documentation in its own window. Here's the exception trace:


org.eclipse.swt.SWTException: Graphic is disposed
	at org.eclipse.swt.SWT.error(SWT.java:4083)
	at org.eclipse.swt.SWT.error(SWT.java:3998)
	at org.eclipse.swt.SWT.error(SWT.java:3969)
	at org.eclipse.swt.graphics.GC.getFont(GC.java:3491)
	at org.eclipse.swt.custom.CTabFolder.onPaint(CTabFolder.java:1685)
	at org.eclipse.swt.custom.CTabFolder$1.handleEvent(CTabFolder.java:262)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1077)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062)
	at org.eclipse.swt.widgets.Composite.WM_PAINT(Composite.java:1454)
	at org.eclipse.swt.widgets.Control.windowProc(Control.java:4216)
	at org.eclipse.swt.widgets.Display.windowProc(Display.java:4886)
	at org.eclipse.swt.internal.ole.win32.COM.VtblCall(Native Method)
	at org.eclipse.swt.internal.ole.win32.IDispatch.Invoke(IDispatch.java:64)
	at org.eclipse.swt.ole.win32.OleAutomation.invoke(OleAutomation.java:570)
	at org.eclipse.swt.ole.win32.OleAutomation.setProperty(OleAutomation.java:713)
	at org.eclipse.swt.browser.IE.create(IE.java:963)
	at org.eclipse.swt.browser.Browser.<init>(Browser.java:119)
	at org.eclipse.jdt.internal.ui.infoviews.JavadocView.internalCreatePartControl(JavadocView.java:605)
	at org.eclipse.jdt.internal.ui.infoviews.AbstractInfoView.createPartControl(AbstractInfoView.java:228)
	at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:375)
	at org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:229)
	at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:595)
	at org.eclipse.ui.internal.Perspective.showView(Perspective.java:2245)
	at org.eclipse.ui.internal.WorkbenchPage.busyShowView(WorkbenchPage.java:1071)
	at org.eclipse.ui.internal.WorkbenchPage$20.run(WorkbenchPage.java:3822)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3819)
	at org.eclipse.ui.internal.WorkbenchPage.showView(WorkbenchPage.java:3795)
	at org.eclipse.jdt.internal.ui.text.java.hover.JavadocHover$ShowInJavadocViewAction.run(JavadocHover.java:219)
	at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
	at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
	at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
	at org.eclipse.jface.action.ActionContributionItem$6.handleEvent(ActionContributionItem.java:452)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657)
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2640)
	at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2604)
	at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2438)
	at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:671)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
	at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:664)
	at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:115)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:369)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:619)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:574)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1407)
Comment 4 Dani Megert CLA 2010-11-23 03:21:54 EST
It looks like the Hyades plug-in is causing troubles at start:
>on: State change in progress for bundle >"reference:file:plugins/org.eclipse.hyades.trace.ui_4.5.
Can you try without that bundle?
Comment 5 Dani Megert CLA 2010-11-23 03:22:16 EST
Also: are you really using 4.1?
Comment 6 Remy Suen CLA 2010-11-23 06:16:29 EST
(In reply to comment #5)
> Also: are you really using 4.1?

Based on the build id specified in comment 0, I don't believe so. The stack trace also doesn't have the 4.x classes I would expect to see as part of its startup cycle.
Comment 7 Lyle Ziegelmiller CLA 2010-11-23 15:29:00 EST
(In reply to comment #5)
> Also: are you really using 4.1?

It's Build id: 20100917-0705. I did install the TPTP plugin for profiling.

I'm going to add the information from the Configuration tab on the Eclipse Installation Details window.
Comment 8 Lyle Ziegelmiller CLA 2010-11-23 15:31:22 EST
Created attachment 183707 [details]
From clipboard - Eclipse Installation Details --> Configuration
Comment 9 Lyle Ziegelmiller CLA 2010-11-23 15:38:54 EST
I've reverted to Ganymede.  It too encountered this same Graphics disposed error once. I rebooted, and that seemed to fix it.

I suspect the Helios software is acquiring a Graphics instance from the operating system some where and not freeing it when it's done with it. This would explain why even Ganymede encountered the same problem, and also why rebooting seemed to fix it. I used Ganymede for a long time and never had this problem with it.
Comment 10 Dani Megert CLA 2010-11-24 03:19:50 EST
Lyle, can you try without hyades?
Comment 11 Lyle Ziegelmiller CLA 2010-11-26 13:56:06 EST
(In reply to comment #10)
> Lyle, can you try without hyades?

I have completely deleted the helios directory eclipse-java-helios-SR1-win32 (which includes the hyades plugin) from my Program Files directory, re-downloaded eclipse-java-helios-SR1-win32.zip, and reinstalled it. The problems I was encountering were intermittent, so I will have to use this for a while, and report back.
Comment 12 Lyle Ziegelmiller CLA 2010-11-29 15:40:00 EST
(In reply to comment #10)
> Lyle, can you try without hyades?

I used Helios several hours yesterday without any problems. Sounds like maybe it was the Hyades plugin. I think there'd be riots in the streets if Eclipse was as buggy for everyone as it was for me with that plugin installed.
Comment 13 Dani Megert CLA 2010-11-30 02:32:21 EST
Sorry, there's not much we can do without more steps/details. Please reopen if you see this again.
Comment 14 Lyle Ziegelmiller CLA 2010-12-08 15:01:15 EST
(In reply to comment #13)
> Sorry, there's not much we can do without more steps/details. Please reopen if
> you see this again.

It just did it again. This time with no trace of hyades.

Getting desperate for clues here as to why it's happening to me and apparently few other people.

I use:

iTunes
Google desktop
Windows Live Mail
WDSmartWare (that software gives me lots of problems, and I did use it yesterday for the first time in quite a while - maybe that's it)
Windows Live Messenger
Weather Channel Desktop

Those are pretty much the only things I use that, in my opinion, even might be contributing to this problem. I use things like Word, but if that were the cause, many more people would be experiencing this problem.

Again, I never had this problem with Ganymede.

I'll leave this closed for now, and see if the problem happens again even with WDSmartWare not running. If it does, I'll reopen it.

regards

Lyle