[cp-patches] FYI GtkImage error handling
2005-07-11 Sven de Marothy <[EMAIL PROTECTED]> * gnu/java/awt/peer/gtk/GtkImage.java: (setImage): Set error flag on bad width, height or pixels. (checkImage): Return error flag. -- Sven de Marothy <[EMAIL PROTECTED]> Index: gnu/java/awt/peer/gtk/GtkImage.java === RCS file: /cvsroot/classpath/classpath/gnu/java/awt/peer/gtk/GtkImage.java,v retrieving revision 1.19 diff -U3 -r1.19 GtkImage.java --- gnu/java/awt/peer/gtk/GtkImage.java 2 Jul 2005 20:32:12 - 1.19 +++ gnu/java/awt/peer/gtk/GtkImage.java 11 Jul 2005 21:05:28 - @@ -100,6 +100,11 @@ boolean offScreen; /** + * Error flag for loading. + */ + boolean errorLoading; + + /** * Original source, if created from an ImageProducer. */ ImageProducer source; @@ -176,6 +181,7 @@ isLoaded = false; observers = new Vector(); source = producer; +errorLoading = false; source.startProduction(new GtkImageConsumer(this, source)); offScreen = false; } @@ -243,6 +249,13 @@ this.width = width; this.height = height; props = (properties != null) ? properties : new Hashtable(); + +if (width <= 0 || height <= 0 || pixels == null) + { + isError = true; + return; + } + isLoaded = true; deliver(); createPixmap(); @@ -346,7 +359,12 @@ public int checkImage (ImageObserver observer) { if (addObserver(observer)) - return 0; + { + if (errorLoading == true) + return ImageObserver.ERROR; + else + return 0; + } return ImageObserver.ALLBITS | ImageObserver.WIDTH | ImageObserver.HEIGHT; } ___ Classpath-patches mailing list Classpath-patches@gnu.org http://lists.gnu.org/mailman/listinfo/classpath-patches
[cp-patches] FYI: GtkImage Error handling (2)
Previous patch is wrong. This one is right. 2005-07-11 Sven de Marothy <[EMAIL PROTECTED]> * gnu/java/awt/peer/gtk/GtkImage.java: (setImage): Set error flag on bad width, height or pixels. (checkImage): Return error flag. -- Sven de Marothy <[EMAIL PROTECTED]> Index: gnu/java/awt/peer/gtk/GtkImage.java === RCS file: /cvsroot/classpath/classpath/gnu/java/awt/peer/gtk/GtkImage.java,v retrieving revision 1.19 diff -U3 -r1.19 GtkImage.java --- gnu/java/awt/peer/gtk/GtkImage.java 2 Jul 2005 20:32:12 - 1.19 +++ gnu/java/awt/peer/gtk/GtkImage.java 11 Jul 2005 21:05:28 - @@ -100,6 +100,11 @@ boolean offScreen; /** + * Error flag for loading. + */ + boolean errorLoading; + + /** * Original source, if created from an ImageProducer. */ ImageProducer source; @@ -176,6 +181,7 @@ isLoaded = false; observers = new Vector(); source = producer; +errorLoading = false; source.startProduction(new GtkImageConsumer(this, source)); offScreen = false; } @@ -243,6 +249,13 @@ this.width = width; this.height = height; props = (properties != null) ? properties : new Hashtable(); + +if (width <= 0 || height <= 0 || pixels == null) + { + errorLoading = true; + return; + } + isLoaded = true; deliver(); createPixmap(); @@ -346,7 +359,12 @@ public int checkImage (ImageObserver observer) { if (addObserver(observer)) - return 0; + { + if (errorLoading == true) + return ImageObserver.ERROR; + else + return 0; + } return ImageObserver.ALLBITS | ImageObserver.WIDTH | ImageObserver.HEIGHT; } ___ Classpath-patches mailing list Classpath-patches@gnu.org http://lists.gnu.org/mailman/listinfo/classpath-patches