Index: ChangeLog =================================================================== RCS file: /cvsroot/classpath/classpath/ChangeLog,v retrieving revision 1.1703 diff -u -b -B -r1.1703 ChangeLog --- ChangeLog 26 Dec 2003 17:23:53 -0000 1.1703 +++ ChangeLog 26 Dec 2003 17:48:23 -0000 @@ -1,3 +1,11 @@ +2003-12-26 Fernando Nasser + + * java/awt/datatransfer/DataFlavor.java (getParameter): + Fix off-by-one error which was clipping off the first character of a + parameter value. + * java/awt/datatransfer/StringSelection.java (getTransferData): + Return object of type expected by specified DataFlavor. + 2003-12-26 Thomas Fitzsimmons * java/awt/image/PixelGrabber.java: Index: java/awt/datatransfer/DataFlavor.java =================================================================== RCS file: /cvsroot/classpath/classpath/java/awt/datatransfer/DataFlavor.java,v retrieving revision 1.17 diff -u -b -B -r1.17 DataFlavor.java --- java/awt/datatransfer/DataFlavor.java 15 Nov 2003 22:41:37 -0000 1.17 +++ java/awt/datatransfer/DataFlavor.java 26 Dec 2003 17:48:24 -0000 @@ -459,7 +459,7 @@ if (idx == -1) return(null); - String value = mimeString.substring(idx + paramName.length() + 2); + String value = mimeString.substring(idx + paramName.length() + 1); idx = value.indexOf(" "); if (idx == -1) Index: java/awt/datatransfer/StringSelection.java =================================================================== RCS file: /cvsroot/classpath/classpath/java/awt/datatransfer/StringSelection.java,v retrieving revision 1.5 diff -u -b -B -r1.5 StringSelection.java --- java/awt/datatransfer/StringSelection.java 23 Jun 2003 12:53:47 -0000 1.5 +++ java/awt/datatransfer/StringSelection.java 26 Dec 2003 17:48:24 -0000 @@ -38,7 +38,7 @@ package java.awt.datatransfer; -import java.io.StringBufferInputStream; +import java.io.StringReader; import java.io.IOException; /** @@ -140,7 +140,15 @@ if (!isDataFlavorSupported(flavor)) throw new UnsupportedFlavorException(flavor); - return(new StringBufferInputStream(data)); + if (DataFlavor.plainTextFlavor == flavor) + /* The behavior of this method for DataFlavor.plainTextFlavor and + equivalent DataFlavors is inconsistent with the definition of + DataFlavor.plainTextFlavor. We choose to do like Sun's implementation + and return a Reader instead of an InputString. */ + /* return(new StringBufferInputStream(data)); */ + return(new StringReader(data)); + else // DataFlavor.stringFlavor + return data; } /*************************************************************************/