You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@harmony.apache.org by Tim Ellison <t....@gmail.com> on 2007/09/24 16:50:28 UTC
[OT] cool photos (was: Re: [jira] Created: (HARMONY-4791) [classlib][awt][image]
Harmony has problem in drawing medium-or-large size of png file if not guarded
by MediaTracker)
Now *that's* a creative way to get a decent testing budget -- "the code
only breaks when we use photos like this" :-)
(Open the JIRA page to see them)
Tim
Chunrong Lai (JIRA) wrote:
> [classlib][awt][image] Harmony has problem in drawing medium-or-large size of png file if not guarded by MediaTracker
> ---------------------------------------------------------------------------------------------------------------------
>
> Key: HARMONY-4791
> URL: https://issues.apache.org/jira/browse/HARMONY-4791
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Environment: Win32
> Reporter: Chunrong Lai
>
>
>
> Sometimes I even observed that Harmony crashes in multi-threading environment but I have not reproducer yet.
> Anyway with below reproducer Harmony draw a glittering 10million.png and the 40million.png breaks finally.
>
> import java.io.*;
> import java.awt.*;
> import java.awt.image.*;
> import javax.swing.*;
>
> public class DrawImageTest extends JFrame {
> public Image image;
> public static void main(String[] args){
> DrawImageTest aTest = new DrawImageTest();
> if(args.length <1) {
> System.out.println("Please input a valid image name");
> System.exit(0);
> }
> aTest.setSize(800, 600);
> aTest.readImage(args[0]);
> aTest.show();
> }
> public DrawImageTest(){}
> public void readImage(String imageName){
> if(image == null) {
> image = Toolkit.getDefaultToolkit().getImage(imageName);
> /*******
> MediaTracker imageTracker = new MediaTracker(new JPanel());
> imageTracker.addImage(image, 0);
> try{
> imageTracker.waitForID(0);
> }catch(InterruptedException e){}
> ********/
> if(image == null) System.out.println("we get an image of null");
> else System.out.println("we get an image of width " + image.getWidth(this) + " height " + image.getHeight(this));
> }
> }
> public void paint(Graphics g){
> super.paint(g);
> g.drawImage(image, 0, 0, null);
> }
> }
>
Re: [OT] cool photos (was: Re: [jira] Created: (HARMONY-4791) [classlib][awt][image] Harmony has problem in drawing medium-or-large size of png file if not guarded by MediaTracker)
Posted by Alexey Petrenko <al...@gmail.com>.
Chunrong used these photos for several bug reports... Really nice pictures :)
2007/9/24, Tim Ellison <t....@gmail.com>:
> Now *that's* a creative way to get a decent testing budget -- "the code
> only breaks when we use photos like this" :-)
>
> (Open the JIRA page to see them)
>
> Tim
>
> Chunrong Lai (JIRA) wrote:
> > [classlib][awt][image] Harmony has problem in drawing medium-or-large size of png file if not guarded by MediaTracker
> > ---------------------------------------------------------------------------------------------------------------------
> >
> > Key: HARMONY-4791
> > URL: https://issues.apache.org/jira/browse/HARMONY-4791
> > Project: Harmony
> > Issue Type: Bug
> > Components: Classlib
> > Environment: Win32
> > Reporter: Chunrong Lai
> >
> >
> >
> > Sometimes I even observed that Harmony crashes in multi-threading environment but I have not reproducer yet.
> > Anyway with below reproducer Harmony draw a glittering 10million.png and the 40million.png breaks finally.
> >
> > import java.io.*;
> > import java.awt.*;
> > import java.awt.image.*;
> > import javax.swing.*;
> >
> > public class DrawImageTest extends JFrame {
> > public Image image;
> > public static void main(String[] args){
> > DrawImageTest aTest = new DrawImageTest();
> > if(args.length <1) {
> > System.out.println("Please input a valid image name");
> > System.exit(0);
> > }
> > aTest.setSize(800, 600);
> > aTest.readImage(args[0]);
> > aTest.show();
> > }
> > public DrawImageTest(){}
> > public void readImage(String imageName){
> > if(image == null) {
> > image = Toolkit.getDefaultToolkit().getImage(imageName);
> > /*******
> > MediaTracker imageTracker = new MediaTracker(new JPanel());
> > imageTracker.addImage(image, 0);
> > try{
> > imageTracker.waitForID(0);
> > }catch(InterruptedException e){}
> > ********/
> > if(image == null) System.out.println("we get an image of null");
> > else System.out.println("we get an image of width " + image.getWidth(this) + " height " + image.getHeight(this));
> > }
> > }
> > public void paint(Graphics g){
> > super.paint(g);
> > g.drawImage(image, 0, 0, null);
> > }
> > }
> >
>