harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mikhail Loenko" <mloe...@gmail.com>
Subject Re: [jira] Updated: (HARMONY-3602) [classlib][awt][drlvm][netbeans] ImageDecoder.terminate() interrupts current thread
Date Fri, 11 May 2007 20:24:23 GMT
why the test passed on J9 if it's a clear API issue?

Thanks,
Mikhail

2007/5/11, Vasily Zakharov (JIRA) <jira@apache.org>:
>
>     [ https://issues.apache.org/jira/browse/HARMONY-3602?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
>
> Vasily Zakharov updated HARMONY-3602:
> -------------------------------------
>
>    Patch Info: [Patch Available]
>
> > [classlib][awt][drlvm][netbeans] ImageDecoder.terminate() interrupts current thread
> > -----------------------------------------------------------------------------------
> >
> >                 Key: HARMONY-3602
> >                 URL: https://issues.apache.org/jira/browse/HARMONY-3602
> >             Project: Harmony
> >          Issue Type: Bug
> >          Components: App-Oriented Bug Reports, Classlib, DRLVM
> >            Reporter: Vasily Zakharov
> >         Attachments: HARMONY-3602-ImageDecoder.patch, test.gif
> >
> >
> > The following piece of code causes the current thread to be interrupted:
> > public class Test {
> >     public static void main(String args[]) throws Exception {
> >         java.awt.Image img = java.awt.Toolkit.getDefaultToolkit().createImage(Thread.currentThread().getContextClassLoader().getResource("test.gif"));
> >         new javax.swing.ImageIcon(img); // Loads the image.
> >         img.flush(); // ERROR: Calls Thread.currentThread().interrupt().
> >         System.out.println(Thread.currentThread().isInterrupted() ? "FAIL" : "SUCCESS");
> >     }
> > }
> > Please put the attached test.gif (it's a trivial image, nothing special, but it
should exist) to current directory before running the test.
> > The stack of calls causing the current thread to be interrupted is:
> >       org.apache.harmony.awt.gl.image.ImageDecoder.terminate() :128
> >       org.apache.harmony.awt.gl.image.DecodingImageSource.removeConsumer(ImageConsumer)
:105
> >       org.apache.harmony.awt.gl.image.OffscreenImage.stopProduction() :426
> >       org.apache.harmony.awt.gl.image.OffscreenImage.flush() :133
> > Probably ImageDecoder.terminate() should not use Thread.currentThread() do determine
a thread to interrupt.
> > Output on RI:
> > SUCCESS
> > Output on Harmony/IBM VM:
> > SUCCESS
> > Output on Harmony/DRL VM:
> > FAIL
> > This looks like a clear AWT problem, however the problem only occurs on DRL VM,
so probably some issue (race condition, lack of synchronization or something like that) exists
there also.
> > The problem was discovered while trying to run NetBeans on Harmony.
>
> --
> This message is automatically generated by JIRA.
> -
> You can reply to this email to add a comment to the issue online.
>
>

Mime
View raw message