--- a/jdk/src/share/classes/sun/awt/dnd/SunDropTargetContextPeer.java Fri Mar 22 19:56:20 2013 +0400
+++ b/jdk/src/share/classes/sun/awt/dnd/SunDropTargetContextPeer.java Wed Mar 27 16:19:51 2013 +0400
@@ -57,7 +57,6 @@
import sun.awt.SunToolkit;
import sun.awt.datatransfer.DataTransferer;
import sun.awt.datatransfer.ToolkitThreadBlockedHandler;
-import sun.security.util.SecurityConstants;
/**
* <p>
@@ -260,6 +259,7 @@
}
final long format = lFormat.longValue();
+
Object ret = getNativeData(format);
if (ret instanceof byte[]) {
@@ -270,11 +270,14 @@
throw new InvalidDnDOperationException(e.getMessage());
}
} else if (ret instanceof InputStream) {
+ InputStream inputStream = (InputStream)ret;
try {
return DataTransferer.getInstance().
- translateStream((InputStream)ret, df, format, this);
+ translateStream(inputStream, df, format, this);
} catch (IOException e) {
throw new InvalidDnDOperationException(e.getMessage());
+ } finally {
+ inputStream.close();
}
} else {
throw new IOException("no native data was transfered");