changeset 9302:0e36674e0087

8034095: parfait] JNI exception pending in src/jdk/src/macosx/native/sun/awt/QuartzRenderer.m Reviewed-by: jgodinez, serb
author prr
date Mon, 31 Mar 2014 16:03:42 -0700
parents 7a9bc29ae6fa
children 0326ba1d2cbd
files src/macosx/native/sun/awt/QuartzRenderer.m
diffstat 1 files changed, 10 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/macosx/native/sun/awt/QuartzRenderer.m	Mon Mar 31 16:03:39 2014 -0700
+++ b/src/macosx/native/sun/awt/QuartzRenderer.m	Mon Mar 31 16:03:42 2014 -0700
@@ -438,6 +438,9 @@
 {
     SDRenderType renderType = SD_Nothing;
 
+    if (xpointsarray == NULL || ypointsarray == NULL) {
+        return SD_Nothing;
+    }
     if (npoints > 1)
     {
         if (fill == YES)
@@ -452,7 +455,14 @@
         jint i;
 
         jint* xpoints = (jint*)(*env)->GetPrimitiveArrayCritical(env, xpointsarray, NULL);
+        if (xpoints == NULL) {
+            return SD_Nothing;
+        }
         jint* ypoints = (jint*)(*env)->GetPrimitiveArrayCritical(env, ypointsarray, NULL);
+        if (ypoints == NULL) {
+            (*env)->ReleasePrimitiveArrayCritical(env, xpointsarray, xpoints, 0);
+            return SD_Nothing;
+        }
 
         CGContextMoveToPoint(cgRef, xpoints[0]+offsetX, ypoints[0]+offsetY);