You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by ay...@apache.org on 2007/07/23 20:25:26 UTC
svn commit: r558824 - in /harmony/enhanced/classlib/trunk/modules/awt/src:
main/java/common/java/awt/Toolkit.java
test/api/java/common/java/awt/ToolkitTest.java
Author: ayza
Date: Mon Jul 23 11:25:25 2007
New Revision: 558824
URL: http://svn.apache.org/viewvc?view=rev&rev=558824
Log:
Applying patch from HARMONY-4491 ([classlib][awt] Exception when trying to create custom cursor)
Modified:
harmony/enhanced/classlib/trunk/modules/awt/src/main/java/common/java/awt/Toolkit.java
harmony/enhanced/classlib/trunk/modules/awt/src/test/api/java/common/java/awt/ToolkitTest.java
Modified: harmony/enhanced/classlib/trunk/modules/awt/src/main/java/common/java/awt/Toolkit.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/awt/src/main/java/common/java/awt/Toolkit.java?view=diff&rev=558824&r1=558823&r2=558824
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/awt/src/main/java/common/java/awt/Toolkit.java (original)
+++ harmony/enhanced/classlib/trunk/modules/awt/src/main/java/common/java/awt/Toolkit.java Mon Jul 23 11:25:25 2007
@@ -733,9 +733,15 @@
throws IndexOutOfBoundsException, HeadlessException {
lockAWT();
try {
- int w = img.getWidth(null), x = hotSpot.x;
- int h = img.getHeight(null), y = hotSpot.y;
- if (x < 0 || x >= w || y < 0 || y >= h) {
+ int w = img.getWidth(null);
+ int h = img.getHeight(null);
+
+ if (w < 0 || h < 0) {
+ // Fix for HARMONY-4491
+ hotSpot.x = 0;
+ hotSpot.y = 0;
+ } else if (hotSpot.x < 0 || hotSpot.x >= w
+ || hotSpot.y < 0 || hotSpot.y >= h) {
// awt.7E=invalid hotSpot
throw new IndexOutOfBoundsException(Messages.getString("awt.7E")); //$NON-NLS-1$
}
Modified: harmony/enhanced/classlib/trunk/modules/awt/src/test/api/java/common/java/awt/ToolkitTest.java
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/awt/src/test/api/java/common/java/awt/ToolkitTest.java?view=diff&rev=558824&r1=558823&r2=558824
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/awt/src/test/api/java/common/java/awt/ToolkitTest.java (original)
+++ harmony/enhanced/classlib/trunk/modules/awt/src/test/api/java/common/java/awt/ToolkitTest.java Mon Jul 23 11:25:25 2007
@@ -40,4 +40,14 @@
}
}
+ public void testCreateCustomCursor() {
+ try {
+ // Regression for HARMONY-4491
+ Toolkit tk = Toolkit.getDefaultToolkit();
+ Image img = tk.createImage(new byte[] { 0 } );
+ Cursor cursor = tk.createCustomCursor(img, new Point(0, 0), "");
+ } catch (IndexOutOfBoundsException e) {
+ fail("Unexpected IndexOutOfBoundsException");
+ }
+ }
}