summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Wielaard <mark@klomp.org>2006-06-14 13:00:09 +0000
committerMark Wielaard <mark@klomp.org>2006-06-14 13:00:09 +0000
commit75d2f1b546dd42bce7f21b6a998784173b4ab540 (patch)
treeecd2e20d4c788abc51b42b46f456cd77a58c639e
parent46a39d3a5ecdadd8952fe620141dde4f90082481 (diff)
downloadclasspath-75d2f1b546dd42bce7f21b6a998784173b4ab540.tar.gz
* native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImage.c
(Java_gnu_java_awt_peer_gtk_GtkImage_getPixels): Return when array cannot be allocated.
-rw-r--r--ChangeLog6
-rw-r--r--native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImage.c5
2 files changed, 11 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 1fc71ee90..1e0f548cf 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2006-06-14 Mark Wielaard <mark@klomp.org>
+
+ * native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImage.c
+ (Java_gnu_java_awt_peer_gtk_GtkImage_getPixels): Return when array
+ cannot be allocated.
+
2006-06-14 Tom Tromey <tromey@redhat.com>
PR java/28024:
diff --git a/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImage.c b/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImage.c
index ff3fbe896..1168c6ec0 100644
--- a/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImage.c
+++ b/native/jni/gtk-peer/gnu_java_awt_peer_gtk_GtkImage.c
@@ -166,6 +166,11 @@ Java_gnu_java_awt_peer_gtk_GtkImage_getPixels(JNIEnv *env, jobject obj)
rowstride = gdk_pixbuf_get_rowstride (pixbuf);
result_array = (*env)->NewIntArray (env, (width * height));
+ if (result_array == NULL)
+ {
+ gdk_threads_leave ();
+ return NULL;
+ }
dst = result_array_iter =
(*env)->GetIntArrayElements (env, result_array, NULL);