summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Wielaard <mark@klomp.org>2007-04-10 11:19:20 +0000
committerMark Wielaard <mark@klomp.org>2007-04-10 11:19:20 +0000
commite335597005abd68253efb98cce1bbf69f12c6a70 (patch)
tree191f516d444ca25b016cd3df6a6faf884deec694
parent534958b7c1bbc367b586f7cccd56d2db094daf3d (diff)
downloadclasspath-e335597005abd68253efb98cce1bbf69f12c6a70.tar.gz
2007-04-10 Mark Wielaard <mark@klomp.org>
* native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c (Java_gnu_java_awt_peer_gtk_ComponentGraphics_initFromVolatile): Destroy surface after it is used to create a cairo context. 2007-04-09 Francis Kung <fkung@redhat.com> PR 31311 * gnu/java/awt/peer/gtk/ComponentGraphics.java (dispose): Removed method. (disposeSurface): Removed method. * gnu_java_awt_peer_gtk_ComponentGraphics.h: Regenerated. * native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c (Java_gnu_java_awt_peer_gtk_ComponentGraphics_disposeSurface): Removed. (Java_gnu_java_awt_peer_gtk_ComponentGraphics_initState): Destroy surface after it is used to create a cairo context.
-rw-r--r--ChangeLog20
-rw-r--r--gnu/java/awt/peer/gtk/ComponentGraphics.java15
-rw-r--r--include/gnu_java_awt_peer_gtk_ComponentGraphics.h1
-rw-r--r--native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c32
4 files changed, 23 insertions, 45 deletions
diff --git a/ChangeLog b/ChangeLog
index 3523bce72..89fa0174f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,23 @@
+2007-04-10 Mark Wielaard <mark@klomp.org>
+
+ * native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c
+ (Java_gnu_java_awt_peer_gtk_ComponentGraphics_initFromVolatile):
+ Destroy surface after it is used to create a cairo context.
+
+2007-04-09 Francis Kung <fkung@redhat.com>
+
+ PR 31311
+ * gnu/java/awt/peer/gtk/ComponentGraphics.java
+ (dispose): Removed method.
+ (disposeSurface): Removed method.
+ * gnu_java_awt_peer_gtk_ComponentGraphics.h: Regenerated.
+ * native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c
+ (Java_gnu_java_awt_peer_gtk_ComponentGraphics_disposeSurface): Removed.
+ (Java_gnu_java_awt_peer_gtk_ComponentGraphics_initState): Destroy surfac
+e
+ after it is used to create a cairo context.
+
+
2007-04-07 Andrew John Hughes <gnu_andrew@member.fsf.org>
* javax/management/ObjectName.java:
diff --git a/gnu/java/awt/peer/gtk/ComponentGraphics.java b/gnu/java/awt/peer/gtk/ComponentGraphics.java
index 7074e0320..4ce20a30d 100644
--- a/gnu/java/awt/peer/gtk/ComponentGraphics.java
+++ b/gnu/java/awt/peer/gtk/ComponentGraphics.java
@@ -151,21 +151,6 @@ public class ComponentGraphics extends CairoGraphics2D
}
/**
- * Destroys the component surface and calls dispose on the cairo
- * graphics2d to destroy any super class resources.
- */
- public void dispose()
- {
- super.dispose();
- disposeSurface(nativePointer);
- }
-
- /**
- * Destroys the component surface.
- */
- private native void disposeSurface(long nativePointer);
-
- /**
* Creates a cairo_t for a volatile image
*/
protected native long initFromVolatile( long pixmapPtr, int width, int height);
diff --git a/include/gnu_java_awt_peer_gtk_ComponentGraphics.h b/include/gnu_java_awt_peer_gtk_ComponentGraphics.h
index fbd5f6a93..2df12469b 100644
--- a/include/gnu_java_awt_peer_gtk_ComponentGraphics.h
+++ b/include/gnu_java_awt_peer_gtk_ComponentGraphics.h
@@ -11,7 +11,6 @@ extern "C"
#endif
JNIEXPORT jlong JNICALL Java_gnu_java_awt_peer_gtk_ComponentGraphics_initState (JNIEnv *env, jobject, jobject);
-JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_ComponentGraphics_disposeSurface (JNIEnv *env, jobject, jlong);
JNIEXPORT jlong JNICALL Java_gnu_java_awt_peer_gtk_ComponentGraphics_initFromVolatile (JNIEnv *env, jobject, jlong, jint, jint);
JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_ComponentGraphics_start_1gdk_1drawing (JNIEnv *env, jobject);
JNIEXPORT void JNICALL Java_gnu_java_awt_peer_gtk_ComponentGraphics_end_1gdk_1drawing (JNIEnv *env, jobject);
diff --git a/native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c b/native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c
index 25163cd9f..ed9cf3d6d 100644
--- a/native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c
+++ b/native/jni/gtk-peer/gnu_java_awt_peer_gtk_ComponentGraphics.c
@@ -1,5 +1,5 @@
/* gnu_java_awt_peer_gtk_ComponentGraphics.c
- Copyright (C) 2006 Free Software Foundation, Inc.
+ Copyright (C) 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU Classpath.
@@ -159,40 +159,13 @@ Java_gnu_java_awt_peer_gtk_ComponentGraphics_initState
cr = cairo_create (surface);
g_assert(cr != NULL);
+ cairo_surface_destroy(surface);
gdk_threads_leave();
return PTR_TO_JLONG(cr);
}
-/**
- * Disposes of the surface
- */
-JNIEXPORT void JNICALL
-Java_gnu_java_awt_peer_gtk_ComponentGraphics_disposeSurface
- (JNIEnv *env __attribute__((unused)), jobject obj __attribute__((unused)),
- jlong value)
-{
- struct cairographics2d *gr;
- cairo_surface_t *surface;
-
- gr = JLONG_TO_PTR(struct cairographics2d, value);
-
- if (gr == NULL)
- return;
-
- if (gr->cr == NULL)
- return;
-
- surface = cairo_get_target (gr->cr);
- if (surface != NULL)
- {
- gdk_threads_enter();
- cairo_surface_destroy (surface);
- gdk_threads_leave();
- }
-}
-
JNIEXPORT jlong JNICALL
Java_gnu_java_awt_peer_gtk_ComponentGraphics_initFromVolatile
(JNIEnv *env __attribute__ ((unused)), jobject obj __attribute__ ((unused)),
@@ -224,6 +197,7 @@ Java_gnu_java_awt_peer_gtk_ComponentGraphics_initFromVolatile
cr = cairo_create (surface);
g_assert(cr != NULL);
+ cairo_surface_destroy(surface);
gdk_threads_leave();