Return-Path: Delivered-To: apmail-harmony-commits-archive@www.apache.org Received: (qmail 93940 invoked from network); 6 Sep 2007 01:15:57 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 6 Sep 2007 01:15:57 -0000 Received: (qmail 26553 invoked by uid 500); 6 Sep 2007 01:15:52 -0000 Delivered-To: apmail-harmony-commits-archive@harmony.apache.org Received: (qmail 26535 invoked by uid 500); 6 Sep 2007 01:15:52 -0000 Mailing-List: contact commits-help@harmony.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@harmony.apache.org Delivered-To: mailing list commits@harmony.apache.org Received: (qmail 26526 invoked by uid 99); 6 Sep 2007 01:15:52 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 05 Sep 2007 18:15:52 -0700 X-ASF-Spam-Status: No, hits=-100.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO brutus.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 06 Sep 2007 01:17:14 +0000 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id C6077714035 for ; Wed, 5 Sep 2007 18:15:33 -0700 (PDT) Message-ID: <23719471.1189041333781.JavaMail.jira@brutus> Date: Wed, 5 Sep 2007 18:15:33 -0700 (PDT) From: "Vasily Zakharov (JIRA)" To: commits@harmony.apache.org Subject: [jira] Updated: (HARMONY-4749) [classlib][awt][image] GifDecoder throws ArrayIndexOutOfBoundsException In-Reply-To: <15640181.1189035813647.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/HARMONY-4749?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Vasily Zakharov updated HARMONY-4749: ------------------------------------- Description: On some files, GifDecoder throws ArrayIndexOutOfBoundsException. Here's the reproducer: import javax.swing.JFrame; import javax.swing.JEditorPane; public class Test { public static void main(String argv[]) { try { JFrame frame = new JFrame("Test"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(100, 100); frame.add(new JEditorPane("text/html", "")); frame.setVisible(true); } catch (Throwable e) { e.printStackTrace(System.out); } } } Output on Harmony/IBM VME: java.lang.ArrayIndexOutOfBoundsException at java.lang.System.arraycopy(System.java:327) at java.lang.System.arraycopy(System.java:237) at org.apache.harmony.awt.gl.image.OffscreenImage.setPixels(OffscreenImage.java:286) at org.apache.harmony.awt.gl.image.ImageDecoder.setPixels(ImageDecoder.java:180) at org.apache.harmony.awt.gl.image.GifDecoder$GifGraphicBlock.sendNewData(GifDecoder.java:446) at org.apache.harmony.awt.gl.image.GifDecoder.decodeImage(GifDecoder.java:221) at org.apache.harmony.awt.gl.image.DecodingImageSource.load(DecodingImageSource.java:252) at org.apache.harmony.awt.gl.image.ImageLoader.run(ImageLoader.java:153) Also, the exception causes an image placeholder to be displayed instead of the image (see attached screenshots). On DRLVM (both Jit and Interpreter), the same test crashes instead of throwing exception (see attached screenshot, clicking Retry - Debug doesn't provide any detail). As the crash occurs in exactly the same local situation, I suppose the problem is not in DRLVM but in classlib indeed. If investigation proves otherwise - a separate issue would have to be filed. The test file triggering the bug is triangle-rt.gif file from Abbot package (http://abbot.sourceforge.net). This file is attached here purely for purpose of reproducing and localizing the bug, and as Abbot is CPL, I suppose this file must not be included into Harmony in any form. The problem was discovered while trying to run Abbot Costello on Harmony. was: On some files, GifDecoder throws ArrayIndexOutOfBoundsException. Here's the reproducer: import javax.swing.JFrame; import javax.swing.JEditorPane; public class Test { public static void main(String argv[]) { try { JFrame frame = new JFrame("Test"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(100, 100); frame.add(new JEditorPane("text/html", "")); frame.setVisible(true); } catch (Throwable e) { e.printStackTrace(System.out); } } } Output on Harmony: java.lang.ArrayIndexOutOfBoundsException at java.lang.System.arraycopy(System.java:327) at java.lang.System.arraycopy(System.java:237) at org.apache.harmony.awt.gl.image.OffscreenImage.setPixels(OffscreenImage.java:286) at org.apache.harmony.awt.gl.image.ImageDecoder.setPixels(ImageDecoder.java:180) at org.apache.harmony.awt.gl.image.GifDecoder$GifGraphicBlock.sendNewData(GifDecoder.java:446) at org.apache.harmony.awt.gl.image.GifDecoder.decodeImage(GifDecoder.java:221) at org.apache.harmony.awt.gl.image.DecodingImageSource.load(DecodingImageSource.java:252) at org.apache.harmony.awt.gl.image.ImageLoader.run(ImageLoader.java:153) The test file triggering the bug is triangle-rt.gif file from Abbot package (http://abbot.sourceforge.net). This file is attached here purely for purpose of reproducing and localizing the bug, and as Abbot is CPL, I suppose this file must not be included into Harmony in any form. The problem was discovered while trying to run Abbot Costello on Harmony. > [classlib][awt][image] GifDecoder throws ArrayIndexOutOfBoundsException > ----------------------------------------------------------------------- > > Key: HARMONY-4749 > URL: https://issues.apache.org/jira/browse/HARMONY-4749 > Project: Harmony > Issue Type: Bug > Components: App-Oriented Bug Reports, Classlib > Reporter: Vasily Zakharov > Attachments: DRLVM.jpg, IBMVME.jpg, RI.jpg, triangle-rt.gif > > > On some files, GifDecoder throws ArrayIndexOutOfBoundsException. Here's the reproducer: > import javax.swing.JFrame; > import javax.swing.JEditorPane; > public class Test { > public static void main(String argv[]) { > try { > JFrame frame = new JFrame("Test"); > frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); > frame.setSize(100, 100); > frame.add(new JEditorPane("text/html", "")); > frame.setVisible(true); > } catch (Throwable e) { > e.printStackTrace(System.out); > } > } > } > Output on Harmony/IBM VME: > java.lang.ArrayIndexOutOfBoundsException > at java.lang.System.arraycopy(System.java:327) > at java.lang.System.arraycopy(System.java:237) > at org.apache.harmony.awt.gl.image.OffscreenImage.setPixels(OffscreenImage.java:286) > at org.apache.harmony.awt.gl.image.ImageDecoder.setPixels(ImageDecoder.java:180) > at org.apache.harmony.awt.gl.image.GifDecoder$GifGraphicBlock.sendNewData(GifDecoder.java:446) > at org.apache.harmony.awt.gl.image.GifDecoder.decodeImage(GifDecoder.java:221) > at org.apache.harmony.awt.gl.image.DecodingImageSource.load(DecodingImageSource.java:252) > at org.apache.harmony.awt.gl.image.ImageLoader.run(ImageLoader.java:153) > Also, the exception causes an image placeholder to be displayed instead of the image (see attached screenshots). > On DRLVM (both Jit and Interpreter), the same test crashes instead of throwing exception (see attached screenshot, clicking Retry - Debug doesn't provide any detail). As the crash occurs in exactly the same local situation, I suppose the problem is not in DRLVM but in classlib indeed. If investigation proves otherwise - a separate issue would have to be filed. > The test file triggering the bug is triangle-rt.gif file from Abbot package (http://abbot.sourceforge.net). This file is attached here purely for purpose of reproducing and localizing the bug, and as Abbot is CPL, I suppose this file must not be included into Harmony in any form. > The problem was discovered while trying to run Abbot Costello on Harmony. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.