8037910: [parfait] JNI warnings in jdk/src/windows/native/sun/java2d/d3d/D3DSurfaceData.cpp
Reviewed-by: serb, jgodinez
--- a/jdk/src/share/native/sun/java2d/opengl/OGLSurfaceData.c Tue Mar 25 12:51:28 2014 -0700
+++ b/jdk/src/share/native/sun/java2d/opengl/OGLSurfaceData.c Tue Mar 25 14:16:53 2014 -0700
@@ -543,7 +543,9 @@
}
JNU_SetFieldByName(env, NULL, sdObject, "nativeWidth", "I", width);
- JNU_SetFieldByName(env, NULL, sdObject, "nativeHeight", "I", height);
+ if (!((*env)->ExceptionOccurred(env))) {
+ JNU_SetFieldByName(env, NULL, sdObject, "nativeHeight", "I", height);
+ }
(*env)->DeleteLocalRef(env, sdObject);
}
--- a/jdk/src/windows/native/sun/java2d/d3d/D3DSurfaceData.cpp Tue Mar 25 12:51:28 2014 -0700
+++ b/jdk/src/windows/native/sun/java2d/d3d/D3DSurfaceData.cpp Tue Mar 25 14:16:53 2014 -0700
@@ -33,9 +33,16 @@
#include "awt_BitmapUtil.h"
#include "D3DRenderQueue.h"
+
// REMIND: move to awt_Component.h
extern "C" HWND AwtComponent_GetHWnd(JNIEnv *env, jlong pData);
+/* This looks weird. but since some AWT headers need to be included,
+ * we end up with AWT's alloc.h macro definition of ExceptionOccurred.
+ * The reasons for that re-defintion do not apply to this code, so undef it.
+ */
+#undef ExceptionOccurred
+
/**
* Initializes nativeWidth/Height fields of the SurfaceData object with
* dimensions on the native surface.
@@ -55,7 +62,9 @@
}
JNU_SetFieldByName(env, NULL, sdObject, "nativeWidth", "I", width);
- JNU_SetFieldByName(env, NULL, sdObject, "nativeHeight", "I", height);
+ if (!(env->ExceptionOccurred())) {
+ JNU_SetFieldByName(env, NULL, sdObject, "nativeHeight", "I", height);
+ }
env->DeleteLocalRef(sdObject);
}