<AWT Dev> [8] Review request JDK-8160941: [macosx]"text/uri-list" dataflavor concats the first two strings

Mikhail Cherkasov mikhail.cherkasov at oracle.com
Mon Jul 11 13:06:48 UTC 2016


Hi Robin,

in your fix there will be extra separator at the end of the text,
you need to put "sb.append(separator);" before "sb.append(strings[i]);"
in for cycle.

Thanks,
Mikhail.

On 08.07.2016 23:06, Robin Stevens wrote:
> Please review the fix for JDK-8160941 .
>
> Webrev: http://cr.openjdk.java.net/~rstevens/8160941/webrev/ 
> <http://cr.openjdk.java.net/%7Erstevens/8160941/webrev/>
>
> The problem: when copy-pasting (or drag-and-dropping) multiple files, 
> the data in the transferable for the flavor "text/uri-list" concats 
> the first two paths.
>
> If you for example copy:
> /Users/robin/Desktop/file1.txt
> /Users/robin/Desktop/file2.txt
> /Users/robin/Desktop/file3.txt
>
> the data in the transferable is
>
> /Users/robin/Desktop/file1.txt/Users/robin/Desktop/file2.txt
> /Users/robin/Desktop/file3.txt
>
> while the expected data is
>
> /Users/robin/Desktop/file1.txt
> /Users/robin/Desktop/file2.txt
> /Users/robin/Desktop/file3.txt
>
>
> This is also what you can observe when running the manual testcase.
> As there was already a manual testcase available (which fails on 
> JDK8), the patch does not include one.
>
> Thanks,
>
> Robin
>
> On Fri, Jul 8, 2016 at 9:53 AM, Alexandr Scherbatiy 
> <alexandr.scherbatiy at oracle.com 
> <mailto:alexandr.scherbatiy at oracle.com>> wrote:
>
>     On 7/7/2016 10:07 PM, Robin Stevens wrote:
>>     Thanks Alexander for creating the issue in the bug tracker and
>>     hosting the webrev.
>>     Do I need to send a new review request to the list with the
>>     official bug number in the subject, or is the current email
>>     thread sufficient ?
>
>       Yes. You can just reply on this email, correct the bug id and
>     provide the webrev link.
>
>       Thanks,
>       Alexandr.
>
>>
>>     Robin
>>
>>     On Thu, Jul 7, 2016 at 9:36 AM, Alexandr Scherbatiy
>>     <alexandr.scherbatiy at oracle.com
>>     <mailto:alexandr.scherbatiy at oracle.com>> wrote:
>>
>>
>>           The issue is recorded under id JDK-8160941 "text/uri-list"
>>         dataflavor concats the first two strings
>>         https://bugs.openjdk.java.net/browse/JDK-8160941
>>
>>           The webrev is uploaded to
>>         http://cr.openjdk.java.net/~alexsch/robin.stevens/8160941/webrev.00
>>         <http://cr.openjdk.java.net/%7Ealexsch/robin.stevens/8160941/webrev.00>
>>
>>           Thanks,
>>           Alexandr.
>>
>>         On 7/7/2016 10:10 AM, Robin Stevens wrote:
>>>         Hello,
>>>
>>>         the backport of the fix for
>>>         https://bugs.openjdk.java.net/browse/JDK-8136763 looks
>>>         incorrect.
>>>         The corresponding manual test case fails on jdk8.
>>>
>>>         The problem: when copy-pasting (or drag-and-dropping)
>>>         multiple files, the data in the transferable for the
>>>         flavor "text/uri-list" concats the first two paths.
>>>
>>>         If you for example copy:
>>>         /Users/robin/Desktop/file1.txt
>>>         /Users/robin/Desktop/file2.txt
>>>         /Users/robin/Desktop/file3.txt
>>>
>>>         the data in the transferable is
>>>
>>>         /Users/robin/Desktop/file1.txt/Users/robin/Desktop/file2.txt
>>>         /Users/robin/Desktop/file3.txt
>>>
>>>         while the expected data is
>>>
>>>         /Users/robin/Desktop/file1.txt
>>>         /Users/robin/Desktop/file2.txt
>>>         /Users/robin/Desktop/file3.txt
>>>
>>>
>>>         This is also what you can observe when running the manual
>>>         testcase.
>>>
>>>         I have logged this in the bug database as issue JI-9041413.
>>>
>>>         Attached you find a webrev with the proposed patch.
>>>         The manual testcase succeeds with this patch, and fails without.
>>>         At the bottom of this email, you also find the output of hg
>>>         diff.
>>>
>>>         The patch does not include a testcase, as there is already
>>>         one available.
>>>
>>>         Regards,
>>>
>>>         Robin
>>>
>>>
>>>         hg diff output:
>>>
>>>         diff -r 0844fa517c35
>>>         src/macosx/classes/sun/lwawt/macosx/CDataTransferer.java
>>>         ---
>>>         a/src/macosx/classes/sun/lwawt/macosx/CDataTransferer.javaTue Jul
>>>         05 11:03:13 2016 -0700
>>>         +++
>>>         b/src/macosx/classes/sun/lwawt/macosx/CDataTransferer.javaThu Jul
>>>         07 08:48:37 2016 +0200
>>>         @@ -148,6 +148,7 @@
>>>                      StringBuilder sb = new StringBuilder();
>>>          if(strings.length > 0) {
>>>          sb.append(strings[0]);
>>>         +  sb.append(separator);
>>>                          for(int i = 1; i < strings.length; i++) {
>>>          sb.append(strings[i]);
>>>          sb.append(separator);
>>
>>
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/awt-dev/attachments/20160711/d65370f2/attachment-0001.html>


More information about the awt-dev mailing list