Hi Ajit,

In the cases where you "continue" on a non-finite slope, doesn't that mean that the edges will be mismatched? If you can't determine the bounding polygon, perhaps the entire operation should be aborted instead...?

It's different from the case of dy1==dy2 which also results in a "continue" because in that case there are no edges to insert in the array because that edge of the bounding box doesn't occupy any vertical space. In the case of an infinite slope, there could be edges expected to be produced (in fact there should be because we've already tested that dy1 != dy2), but the loop doesn't produce any edge values and stale data is left in the array.

                        ...jim

On 9/1/16 2:14 AM, Ajit Ghaisas wrote:
Hi,



   This is a review request for 8u back-port of the fix done in JDK-9.



Bug :

   https://bugs.openjdk.java.net/browse/JDK-8158356



Root cause :

   The root cause of the crash is - NaN is converted to an integer and used as 
array index in mlib_ImageScanPoly.c.



Fix :

   The native method previously did not check the validity of the input double 
argument. Now, I have added a check for
finite double values.



Webrev :

    http://cr.openjdk.java.net/~aghaisas/8158356/8u_backport/webrev.00/



Regards,

Ajit

Reply via email to