aboutsummaryrefslogtreecommitdiff
path: root/libjava/java
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java')
-rw-r--r--libjava/java/awt/datatransfer/StringSelection.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/libjava/java/awt/datatransfer/StringSelection.java b/libjava/java/awt/datatransfer/StringSelection.java
index 6db7450..51addb7 100644
--- a/libjava/java/awt/datatransfer/StringSelection.java
+++ b/libjava/java/awt/datatransfer/StringSelection.java
@@ -38,7 +38,7 @@ exception statement from your version. */
package java.awt.datatransfer;
-import java.io.StringBufferInputStream;
+import java.io.StringReader;
import java.io.IOException;
/**
@@ -140,7 +140,15 @@ getTransferData(DataFlavor flavor) throws UnsupportedFlavorException,
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;
}
/*************************************************************************/