Skip to main content



      Home
Home » Eclipse Projects » GEF » Image handles and draw2d exception
Image handles and draw2d exception [message #64392] Wed, 12 February 2003 02:48 Go to next message
Eclipse UserFriend
Hi
my application was built using the com.ibm.etools version of GEF and
draw2d, lately, i found out that when the graph tends to include a lot of
nodes and connections, sometimes i get the following exception:
org.eclipse.swt.SWTError: No more handles
at org.eclipse.swt.SWT.error(SWT.java:2144)
at org.eclipse.swt.graphics.Image.internal_new_GC(Image.java(Co mpiled
Code))
at org.eclipse.swt.graphics.Image.internal_new_GC(Image.java(Co mpiled
Code))
at org.eclipse.swt.graphics.GC.<init>(GC.java(Compiled Code))
at
com.ibm.etools.draw2d.BufferedGraphicsSource.getGraphics(Buf feredGraphicsSource.java(Compiled
Code))
at
com.ibm.etools.draw2d.DeferredUpdateManager.repairDamage(Def erredUpdateManager.java(Compiled
Code))
at
com.ibm.etools.draw2d.DeferredUpdateManager.performUpdate(De ferredUpdateManager.java(Compiled
Code))
at
com.ibm.etools.draw2d.DeferredUpdateManager$UpdateRequest.ru n(DeferredUpdateManager.java(Compiled
Code))
at
org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchr onizer.java(Compiled
Code))
at
org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchr onizer.java(Compiled
Code))
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java (Compiled
Code))
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java (Compiled
Code))
at org.eclipse.jface.window.Window.runEventLoop(Window.java(Com piled
Code))
at org.eclipse.jface.window.Window.open(Window.java:542)
at
org.eclipse.ui.internal.dialogs.InternalErrorDialog.open(Int ernalErrorDialog.java:65)
at
org.eclipse.ui.internal.dialogs.InternalErrorDialog.openQues tion(InternalErrorDialog.java:166)
at
org.eclipse.ui.internal.ExceptionHandler.openQuestionDialog( ExceptionHandler.java:187)
at
org.eclipse.ui.internal.ExceptionHandler.handleException(Exc eptionHandler.java:92)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a(Compiled
Code))
at org.eclipse.ui.internal.Workbench.run(Workbench.java:1326)
at
org.eclipse.core.internal.boot.InternalBootLoader.run(Intern alBootLoader.java:831)
at org.eclipse.core.boot.BootLoader.run(BootLoader.java:462)
at java.lang.reflect.Method.invoke(Native Method)
at org.eclipse.core.launcher.Main.basicRun(Main.java:247)
at org.eclipse.core.launcher.Main.run(Main.java:703)
at org.eclipse.core.launcher.Main.main(Main.java:539)
i am using image registry to all the images in my application, if someone
has another idea how to reduce the number of OS handles, please let me know
thanks
yoav
Re: Image handles and draw2d exception [message #64509 is a reply to message #64392] Wed, 12 February 2003 09:45 Go to previous messageGo to next message
Eclipse UserFriend
What version of the com.ibm.etools.gef plugin are you using? I believe this was fixed for version
2.0.1 but definitely by 2.0.2. See http://bugs.eclipse.org/bugs/show_bug.cgi?id=19803 for more info.

Yoav Rubin wrote:
> Hi
> my application was built using the com.ibm.etools version of GEF and
> draw2d, lately, i found out that when the graph tends to include a lot of
> nodes and connections, sometimes i get the following exception:
> org.eclipse.swt.SWTError: No more handles
> at org.eclipse.swt.SWT.error(SWT.java:2144)
> at org.eclipse.swt.graphics.Image.internal_new_GC(Image.java(Co mpiled
> Code))
> at org.eclipse.swt.graphics.Image.internal_new_GC(Image.java(Co mpiled
> Code))
> at org.eclipse.swt.graphics.GC.<init>(GC.java(Compiled Code))
> at
> com.ibm.etools.draw2d.BufferedGraphicsSource.getGraphics(Buf feredGraphicsSource.java(Compiled
> Code))
> at
> com.ibm.etools.draw2d.DeferredUpdateManager.repairDamage(Def erredUpdateManager.java(Compiled
> Code))
> at
> com.ibm.etools.draw2d.DeferredUpdateManager.performUpdate(De ferredUpdateManager.java(Compiled
> Code))
> at
> com.ibm.etools.draw2d.DeferredUpdateManager$UpdateRequest.ru n(DeferredUpdateManager.java(Compiled
> Code))
> at
> org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchr onizer.java(Compiled
> Code))
> at
> org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchr onizer.java(Compiled
> Code))
> at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java (Compiled
> Code))
> at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java (Compiled
> Code))
> at org.eclipse.jface.window.Window.runEventLoop(Window.java(Com piled
> Code))
> at org.eclipse.jface.window.Window.open(Window.java:542)
> at
> org.eclipse.ui.internal.dialogs.InternalErrorDialog.open(Int ernalErrorDialog.java:65)
> at
> org.eclipse.ui.internal.dialogs.InternalErrorDialog.openQues tion(InternalErrorDialog.java:166)
> at
> org.eclipse.ui.internal.ExceptionHandler.openQuestionDialog( ExceptionHandler.java:187)
> at
> org.eclipse.ui.internal.ExceptionHandler.handleException(Exc eptionHandler.java:92)
> at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a(Compiled
> Code))
> at org.eclipse.ui.internal.Workbench.run(Workbench.java:1326)
> at
> org.eclipse.core.internal.boot.InternalBootLoader.run(Intern alBootLoader.java:831)
> at org.eclipse.core.boot.BootLoader.run(BootLoader.java:462)
> at java.lang.reflect.Method.invoke(Native Method)
> at org.eclipse.core.launcher.Main.basicRun(Main.java:247)
> at org.eclipse.core.launcher.Main.run(Main.java:703)
> at org.eclipse.core.launcher.Main.main(Main.java:539)
> i am using image registry to all the images in my application, if someone
> has another idea how to reduce the number of OS handles, please let me know
> thanks
> yoav
>
Re: Image handles and draw2d exception [message #64557 is a reply to message #64509] Wed, 12 February 2003 10:38 Go to previous message
Eclipse UserFriend
Originally posted by: none.us.ibm.com

This stack trace is coming in through the repairDamage(..) method, not the
OverviewWindow. The fix in 2.0.1 was to do a tiled update of the Overview
window to avoid requiring a really large Image.

Most likely, you have a resource leak and have run out of OS handles for
Images. Draw2d needs to new an Image during paint, but it disposes it later.
There is an SWT utility to track down resource leaks. Check the SWT
homepage.

"Eric Bordeau" <ebordeau@us.ibm.com> wrote in message
news:b2dl62$sjr$1@rogue.oti.com...
> What version of the com.ibm.etools.gef plugin are you using? I believe
this was fixed for version
> 2.0.1 but definitely by 2.0.2. See
http://bugs.eclipse.org/bugs/show_bug.cgi?id=19803 for more info.
>
> Yoav Rubin wrote:
> > Hi
> > my application was built using the com.ibm.etools version of GEF and
> > draw2d, lately, i found out that when the graph tends to include a lot
of
> > nodes and connections, sometimes i get the following exception:
> > org.eclipse.swt.SWTError: No more handles
> > at org.eclipse.swt.SWT.error(SWT.java:2144)
> > at org.eclipse.swt.graphics.Image.internal_new_GC(Image.java(Co mpiled
> > Code))
> > at org.eclipse.swt.graphics.Image.internal_new_GC(Image.java(Co mpiled
> > Code))
> > at org.eclipse.swt.graphics.GC.<init>(GC.java(Compiled Code))
> > at
> >
com.ibm.etools.draw2d.BufferedGraphicsSource.getGraphics(Buf feredGraphicsSou
rce.java(Compiled
> > Code))
> > at
> >
com.ibm.etools.draw2d.DeferredUpdateManager.repairDamage(Def erredUpdateManag
er.java(Compiled
> > Code))
> > at
> >
com.ibm.etools.draw2d.DeferredUpdateManager.performUpdate(De ferredUpdateMana
ger.java(Compiled
> > Code))
> > at
> >
com.ibm.etools.draw2d.DeferredUpdateManager$UpdateRequest.ru n(DeferredUpdate
Manager.java(Compiled
> > Code))
> > at
> >
org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchr onizer.java(Comp
iled
> > Code))
> > at
> >
org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchr onizer.java(Comp
iled
> > Code))
> > at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java (Compiled
> > Code))
> > at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java (Compiled
> > Code))
> > at org.eclipse.jface.window.Window.runEventLoop(Window.java(Com piled
> > Code))
> > at org.eclipse.jface.window.Window.open(Window.java:542)
> > at
> >
org.eclipse.ui.internal.dialogs.InternalErrorDialog.open(Int ernalErrorDialog
..java:65)
> > at
> >
org.eclipse.ui.internal.dialogs.InternalErrorDialog.openQues tion(InternalErr
orDialog.java:166)
> > at
> >
org.eclipse.ui.internal.ExceptionHandler.openQuestionDialog( ExceptionHandler
..java:187)
> > at
> >
org.eclipse.ui.internal.ExceptionHandler.handleException(Exc eptionHandler.ja
va:92)
> > at
org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.jav a(Compiled
> > Code))
> > at org.eclipse.ui.internal.Workbench.run(Workbench.java:1326)
> > at
> >
org.eclipse.core.internal.boot.InternalBootLoader.run(Intern alBootLoader.jav
a:831)
> > at org.eclipse.core.boot.BootLoader.run(BootLoader.java:462)
> > at java.lang.reflect.Method.invoke(Native Method)
> > at org.eclipse.core.launcher.Main.basicRun(Main.java:247)
> > at org.eclipse.core.launcher.Main.run(Main.java:703)
> > at org.eclipse.core.launcher.Main.main(Main.java:539)
> > i am using image registry to all the images in my application, if
someone
> > has another idea how to reduce the number of OS handles, please let me
know
> > thanks
> > yoav
> >
>
Previous Topic:Moving TreeItems
Next Topic:How to draw a Polyline across Figure
Goto Forum:
  


Current Time: Thu May 08 09:06:00 EDT 2025

Powered by FUDForum. Page generated in 0.05327 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top