You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Andrey Pavlenko (JIRA)" <ji...@apache.org> on 2007/01/25 13:25:49 UTC
[jira] Commented: (HARMONY-2656) [classlib][awt] Compatibility:
java.awt.AreaAveragingScaleFilter.setPixels() throws different Exceptions
on RI and Harmony when the height is negative
[ https://issues.apache.org/jira/browse/HARMONY-2656?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12467345 ]
Andrey Pavlenko commented on HARMONY-2656:
------------------------------------------
The issue is in the negative height passed to the AreaAveragingScaleFilter() constructor. RI does not throw any Exceptions in this case, but I don't think it's a valid behavior. I think this issue should be closed as non-bug diff.
> [classlib][awt] Compatibility: java.awt.AreaAveragingScaleFilter.setPixels() throws different Exceptions on RI and Harmony when the height is negative
> ------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: HARMONY-2656
> URL: https://issues.apache.org/jira/browse/HARMONY-2656
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Ilya Okomin
> Priority: Minor
>
> java.awt.AreaAveragingScaleFilter.setPixels(int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize)
> on Harmony throws NegativeArraySizeException with incorrect height parmeters. RI throws IndexOutOfBoundsException.
> See test case to reproduce:
> ---------- test.java -----------
> import java.awt.image.AreaAveragingScaleFilter;
> import java.awt.image.ColorModel;
> import junit.framework.TestCase;
> import junit.textui.TestRunner;
> public class test extends TestCase {
> public static void main(String args[]) {
> TestRunner.run(test.class);
> }
> public void testRun() {
> int width = 143;
> int height = -1;
> int x = 1;
> int y = 1;
> int w = 1;
> int h = 1;
> int[] pixels = new int[] {};
> AreaAveragingScaleFilter locAASF = new AreaAveragingScaleFilter(width,
> height);
> int off = 2;
> int scansize = 1;
> try {
> locAASF.setPixels(x, y, w, h, (ColorModel) null, pixels, off,
> scansize);
> fail("IndexOutOfBoundsException expected");
> } catch (IndexOutOfBoundsException e) {
> // expected
> }
> }
> }
> --------------------------
> Output RI:
> ========
> .
> Time: 0,1
> OK (1 test)
> Output Harmony:
> =============
> .E
> Time: 0.04
> There was 1 error:
> 1) testRun(test)java.lang.NegativeArraySizeException
> at java.awt.image.ReplicateScaleFilter.initArrays(ReplicateScaleFilter.java:172)
> at java.awt.image.ReplicateScaleFilter.setPixels(ReplicateScaleFilter.java:82)
> at java.awt.image.AreaAveragingScaleFilter.setPixels(AreaAveragingScaleFilter.java:55)
> at test.testRun(test.java:25)
> at java.lang.reflect.VMReflection.invokeMethod(Native Method)
> at test.main(test.java:10)
> FAILURES!!!
> Tests run: 1, Failures: 0, Errors: 1
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.