summaryrefslogtreecommitdiff
path: root/gnu/java/awt/peer/gtk/ComponentGraphics.java
diff options
context:
space:
mode:
authorMark Wielaard <mark@klomp.org>2006-06-11 11:21:51 +0000
committerMark Wielaard <mark@klomp.org>2006-06-11 11:21:51 +0000
commit6d55fa9a13367148ce5576c2334656b5eb1810e3 (patch)
treef37ab6dcac43d6a4a9ccbd4b148913e85356a31f /gnu/java/awt/peer/gtk/ComponentGraphics.java
parenta827b57abc34e7138dfeb2d4bb7628bfad6eaac6 (diff)
downloadclasspath-6d55fa9a13367148ce5576c2334656b5eb1810e3.tar.gz
* gnu/java/awt/peer/gtk/CairoGraphics2D.java (drawImage):
Don't recurse, return false if not an BufferedImage and no image source available. * gnu/java/awt/peer/gtk/ComponentGraphics.java (draw): Add end_gdk_drawing() to finally block. (fill): Likewise. (drawRenderedImage): Likewise. (drawImage): Likewise. (drawGlyphVector): Likewise.
Diffstat (limited to 'gnu/java/awt/peer/gtk/ComponentGraphics.java')
-rw-r--r--gnu/java/awt/peer/gtk/ComponentGraphics.java51
1 files changed, 41 insertions, 10 deletions
diff --git a/gnu/java/awt/peer/gtk/ComponentGraphics.java b/gnu/java/awt/peer/gtk/ComponentGraphics.java
index 0d967533c..341e514d4 100644
--- a/gnu/java/awt/peer/gtk/ComponentGraphics.java
+++ b/gnu/java/awt/peer/gtk/ComponentGraphics.java
@@ -181,38 +181,69 @@ public class ComponentGraphics extends CairoGraphics2D
public void draw(Shape s)
{
start_gdk_drawing();
- super.draw(s);
- end_gdk_drawing();
+ try
+ {
+ super.draw(s);
+ }
+ finally
+ {
+ end_gdk_drawing();
+ }
}
public void fill(Shape s)
{
start_gdk_drawing();
- super.fill(s);
- end_gdk_drawing();
+ try
+ {
+ super.fill(s);
+ }
+ finally
+ {
+ end_gdk_drawing();
+ }
}
public void drawRenderedImage(RenderedImage image, AffineTransform xform)
{
start_gdk_drawing();
- super.drawRenderedImage(image, xform);
- end_gdk_drawing();
+ try
+ {
+ super.drawRenderedImage(image, xform);
+ }
+ finally
+ {
+ end_gdk_drawing();
+ }
}
protected boolean drawImage(Image img, AffineTransform xform,
Color bgcolor, ImageObserver obs)
{
+ boolean rv;
start_gdk_drawing();
- boolean rv = super.drawImage(img, xform, bgcolor, obs);
- end_gdk_drawing();
+ try
+ {
+ rv = super.drawImage(img, xform, bgcolor, obs);
+ }
+ finally
+ {
+ end_gdk_drawing();
+ }
return rv;
}
public void drawGlyphVector(GlyphVector gv, float x, float y)
{
start_gdk_drawing();
- super.drawGlyphVector(gv, x, y);
- end_gdk_drawing();
+ try
+ {
+ super.drawGlyphVector(gv, x, y);
+ }
+ finally
+ {
+ end_gdk_drawing();
+ }
}
public boolean drawImage(Image img, int x, int y, ImageObserver observer)