Fixes bug#24113
2005-10-03 Lillian Angel <[EMAIL PROTECTED]>
* javax/swing/JOptionPane.java
(getInputValue): If the option selected is 'Cancel', then
the input value is set to null.
(showInternalConfirmDialog): Added check to prevent NPE.
(showInternalConfirmDialog): Likewise.
(showInternalConfirmDialog): Likewise.
(showInternalConfirmDialog): Likewise.
(showInternalOptionDialog): Likewise.
(showOptionDialog): Likewise.
Index: javax/swing/JOptionPane.java
===================================================================
RCS file: /cvsroot/classpath/classpath/javax/swing/JOptionPane.java,v
retrieving revision 1.18
diff -u -r1.18 JOptionPane.java
--- javax/swing/JOptionPane.java 30 Sep 2005 19:13:23 -0000 1.18
+++ javax/swing/JOptionPane.java 3 Oct 2005 15:18:11 -0000
@@ -509,6 +509,8 @@
*/
public Object getInputValue()
{
+ if (getValue().equals(new Integer(CANCEL_OPTION)))
+ setInputValue(null);
return inputValue;
}
@@ -1124,8 +1126,10 @@
JInternalFrame frame = pane.createInternalFrame(parentComponent, null);
startModal(frame);
-
- return ((Integer) pane.getValue()).intValue();
+
+ if (pane.getValue() instanceof Integer)
+ return ((Integer) pane.getValue()).intValue();
+ return -1;
}
/**
@@ -1150,7 +1154,9 @@
startModal(frame);
- return ((Integer) pane.getValue()).intValue();
+ if (pane.getValue() instanceof Integer)
+ return ((Integer) pane.getValue()).intValue();
+ return -1;
}
/**
@@ -1176,7 +1182,9 @@
startModal(frame);
- return ((Integer) pane.getValue()).intValue();
+ if (pane.getValue() instanceof Integer)
+ return ((Integer) pane.getValue()).intValue();
+ return -1;
}
/**
@@ -1204,7 +1212,9 @@
startModal(frame);
- return ((Integer) pane.getValue()).intValue();
+ if (pane.getValue() instanceof Integer)
+ return ((Integer) pane.getValue()).intValue();
+ return -1;
}
/**
@@ -1380,8 +1390,10 @@
JInternalFrame frame = pane.createInternalFrame(parentComponent, title);
startModal(frame);
-
- return ((Integer) pane.getValue()).intValue();
+
+ if (pane.getValue() instanceof Integer)
+ return ((Integer) pane.getValue()).intValue();
+ return -1;
}
/**
@@ -1468,7 +1480,9 @@
dialog.pack();
dialog.show();
- return ((Integer) pane.getValue()).intValue();
+ if (pane.getValue() instanceof Integer)
+ return ((Integer) pane.getValue()).intValue();
+ return -1;
}
/**
_______________________________________________
Classpath-patches mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/classpath-patches