[OpenJDK 2D-Dev] Marlin vs OpenPisces

Jim Graham james.graham at oracle.com
Thu Oct 13 21:06:02 UTC 2016


Most of the pre-open-source changes are superseded by a single commit with the synopsis "Incorporate the latest pisces 
improvements from OpenJDK" and the associated bug (which is marked confidential because this code was not open-sourced 
at that time) says "Hey, Denis Lila did a whole lot of work on OpenPisces, we should integrate that into our Pisces!", 
so I think most of the work prior to the bugs I point out below was already visible in the version of Pisces that you 
started from in OpenJDK.

The only bug fixing that seemed to occur after those "update from JDK" changesets was to fix "leaks", but the associated 
bug was more about transient garbage than true leaks and most of it was dealt with by reusing renderers and alpha 
arrays, but you've already dug through that in your early Marlin->FX investigations.

So, I think the below list is reasonably comprehensive...

			...jim

On 10/13/16 1:24 PM, Jim Graham wrote:
> I'm trying to track down the old history after a lot of file moves, but here is what I have so far:
>
> (Note that some of these only apply when we use it in non-AA mode where we set the number of subpixel samples to 1x1)
>
> https://bugs.openjdk.java.net/browse/JDK-8092682  (non-AA: changing BND constants)
> https://bugs.openjdk.java.net/browse/JDK-8094493  (needed for non-AA, but applicable to AA)
> https://bugs.openjdk.java.net/browse/JDK-8094313  (first attempt to use for both AA/non-AA)
> https://bugs.openjdk.java.net/browse/JDK-8088013  (fixed, then backed out, replaced by 8094313)
> https://bugs.openjdk.java.net/browse/JDK-8097787  (likely the dash fixes you noted below)
> https://bugs.openjdk.java.net/browse/JDK-8119693  (AIOOB in dash array growth)
>
> At that point, the files were moved from another repo during a huge open-sourcing effort so I'll need a little more
> digging to find further history.
>
> Also, I don't think there is any history for "changes that were made when we ported it from the JDK".  I don't think
> there were any "bug fixes" during that work for the initial commit, though, so we can probably assume that the change
> logs (when I can find the pre-open-source list) were the sum total of all of the bug fixes...
>
>                 ...jim
>
> On 10/13/16 1:05 PM, Phil Race wrote:
>>
>>
>> On 10/13/2016 12:22 PM, Laurent Bourgès wrote:
>>>
>>> Hi,
>>>
>>> I looked at openpisces enhancements in compare to pisces I forked in 2013.6 and noticed at least 2 important changes:
>>> - Dasher initialization: handle too small phase
>>> - Stroker: new cases for parallel directions between control points in  quad / cubic curve subdivision
>>>
>>> I plan to upgrade Marlin in jdk9 to integrate those improvements.
>>> Is there OpenJFX bugs and tests to reproduce those complex situations ?
>>>
>>
>> Between FX having multiple source code restructuring, open-sourcing losing history and
>> a change from not always using bug ids in the commit through a change in
>> bug system .. and no strict requirements about regression tests it might be
>> challenging to identify the bugs under which such changes were made.
>> Maybe Jim can help a bit since he may have made or at least reviewed those changes.
>>
>> -phil.
>>
>>> Do you know other changes I should look at ?
>>>
>>> PS: this work is more a backport of bug fixes than enhancements to be accepted in jdk9, isn't it ?
>>>
>>
>> I think it is still acceptable for 9.
>>
>> -phil.
>>
>>> Thanks for your feedback,
>>> Laurent
>>>
>>



More information about the 2d-dev mailing list