diff -r e5618cc85d74 -r 6c158198356e javauis/lcdui_akn/javalcdui/javasrc.nokialcdui/javax/microedition/lcdui/CanvasGraphicsItemPainter.java --- a/javauis/lcdui_akn/javalcdui/javasrc.nokialcdui/javax/microedition/lcdui/CanvasGraphicsItemPainter.java Thu Jul 15 18:31:06 2010 +0300 +++ b/javauis/lcdui_akn/javalcdui/javasrc.nokialcdui/javax/microedition/lcdui/CanvasGraphicsItemPainter.java Thu Aug 19 09:48:13 2010 +0300 @@ -263,12 +263,15 @@ */ final void registeredFinalize() { - synchronized (iToolkit) + if (mFinalizer != null) { - if (iHandle > 0) + synchronized (iToolkit) { - _dispose(iToolkit.getHandle(), iHandle); - iHandle = 0; + if (iHandle > 0) + { + iToolkit.disposeObject(iHandle); + iHandle = 0; + } } } }