Hello, Anthony.

> By "delivered incorrectly", what do you mean exactly?
I’ve started to describe you the situation when I realized that the problem is 
more general, not the corner case as I’ve thought initially.
So the fix is incorrect and I need to take a complicated path here. Sorry for 
the time wasted on this review, I’ll send a new version as soon
as it will be ready.

With best regards. Petr.

On May 23, 2014, at 3:30 PM, Anthony Petrov <[email protected]> wrote:

> Hi Petr,
> 
> On 5/22/2014 7:42 PM, Petr Pchelko wrote:
>> Please review a yet another AppContext fix:
>> https://bugs.openjdk.java.net/browse/JDK-8043393
>> The fix is available here:
>> http://cr.openjdk.java.net/~pchelko/9/8043393/webrev/
>> 
>> checkChange method is called on a Toolkit thread, but we are trying to 
>> convert formats to flavors there.
>> The conversion needs to to use the SystemFlavorMap which is local to 
>> AppContext. But really we can
>> avoid conversion and compare native formats.
>> 
>> This fix is not absolutely precise: in case we have several applets in one 
>> VM and each applet have set it's own
>> different flavor mapping, it's possible (but highly unlikely) that a 
>> notification would be delivered incorrectly.
> 
> By "delivered incorrectly", what do you mean exactly?
> 
> The crux of the fix is to get rid of a call to formatArrayAsDataFlavorSet(). 
> Do I understand correctly that the size() of the returned Set<> may not be 
> equal to the length of the formats array passed as an argument to this 
> method? Why could this happen?
> 
> Also, what is the order of longs stored in this array? Are we certain it's 
> always the same, and so the Arrays.equals() does the right thing? Or should 
> we sort the arrays first?
> 
> --
> best regards,
> Anthony
> 
>> But fixing that imaginary bug would require enormous amount of changes in 
>> Clipboard event delivery and will make
>> it way harder to modularize the DataTransfer system. So I believe that a 
>> simple solution would work better here.
>> I can file a new P4 bug for the described scenario to address it after I 
>> finish DataTransfer modularization.
>> 
>> With best regards. Petr.
>> 

Reply via email to