CVSROOT: /cvsroot/classpath Module name: classpath Changes by: Mark Wielaard <mark> 06/06/11 11:21:52
Modified files: . : ChangeLog gnu/java/awt/peer/gtk: CairoGraphics2D.java ComponentGraphics.java Log message: * 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. CVSWeb URLs: http://cvs.savannah.gnu.org/viewcvs/classpath/ChangeLog?cvsroot=classpath&r1=1.7768&r2=1.7769 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/java/awt/peer/gtk/CairoGraphics2D.java?cvsroot=classpath&r1=1.18&r2=1.19 http://cvs.savannah.gnu.org/viewcvs/classpath/gnu/java/awt/peer/gtk/ComponentGraphics.java?cvsroot=classpath&r1=1.12&r2=1.13 Patches: Index: ChangeLog =================================================================== RCS file: /cvsroot/classpath/classpath/ChangeLog,v retrieving revision 1.7768 retrieving revision 1.7769 diff -u -b -r1.7768 -r1.7769 --- ChangeLog 11 Jun 2006 10:40:52 -0000 1.7768 +++ ChangeLog 11 Jun 2006 11:21:51 -0000 1.7769 @@ -1,3 +1,15 @@ +2006-06-11 Mark Wielaard <[EMAIL PROTECTED]> + + * 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. + 2006-06-11 Raif S. Naffah <[EMAIL PROTECTED]> * doc/tools.texinfo: Added text for new -cacert command. Index: gnu/java/awt/peer/gtk/CairoGraphics2D.java =================================================================== RCS file: /cvsroot/classpath/classpath/gnu/java/awt/peer/gtk/CairoGraphics2D.java,v retrieving revision 1.18 retrieving revision 1.19 diff -u -b -r1.18 -r1.19 --- gnu/java/awt/peer/gtk/CairoGraphics2D.java 10 Jun 2006 10:33:17 -0000 1.18 +++ gnu/java/awt/peer/gtk/CairoGraphics2D.java 11 Jun 2006 11:21:52 -0000 1.19 @@ -79,6 +79,7 @@ import java.awt.image.DataBufferInt; import java.awt.image.DirectColorModel; import java.awt.image.ImageObserver; +import java.awt.image.ImageProducer; import java.awt.image.ImagingOpException; import java.awt.image.MultiPixelPackedSampleModel; import java.awt.image.Raster; @@ -1100,11 +1101,14 @@ + xform.toString()); } - // Unrecognized image - convert to a BufferedImage and come back. + // Unrecognized image - convert to a BufferedImage if( !(img instanceof BufferedImage) ) - return this.drawImage(Toolkit.getDefaultToolkit(). - createImage(img.getSource()), - xform, bgcolor, obs); + { + ImageProducer source = img.getSource(); + if (source == null) + return false; + img = Toolkit.getDefaultToolkit().createImage(source); + } BufferedImage b = (BufferedImage) img; DataBuffer db; Index: gnu/java/awt/peer/gtk/ComponentGraphics.java =================================================================== RCS file: /cvsroot/classpath/classpath/gnu/java/awt/peer/gtk/ComponentGraphics.java,v retrieving revision 1.12 retrieving revision 1.13 diff -u -b -r1.12 -r1.13 --- gnu/java/awt/peer/gtk/ComponentGraphics.java 10 Jun 2006 10:33:18 -0000 1.12 +++ gnu/java/awt/peer/gtk/ComponentGraphics.java 11 Jun 2006 11:21:52 -0000 1.13 @@ -181,39 +181,70 @@ public void draw(Shape s) { start_gdk_drawing(); + try + { super.draw(s); + } + finally + { end_gdk_drawing(); } + } public void fill(Shape s) { start_gdk_drawing(); + try + { super.fill(s); + } + finally + { end_gdk_drawing(); } + } public void drawRenderedImage(RenderedImage image, AffineTransform xform) { start_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); + 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(); + try + { super.drawGlyphVector(gv, x, y); + } + finally + { end_gdk_drawing(); } + } public boolean drawImage(Image img, int x, int y, ImageObserver observer) {