Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Kurtakov2012-03-14 16:13:52 +0000
committerSilenio Quarti2012-03-19 14:39:17 +0000
commit76ea0a71909995e0099e839e67ffcafe22680240 (patch)
tree00cda381a86351a835303bb20bfa247abefcf216
parent04c22da729e18d1ddf8c71f457fb67dda8450de7 (diff)
downloadeclipse.platform.swt-76ea0a71909995e0099e839e67ffcafe22680240.tar.gz
eclipse.platform.swt-76ea0a71909995e0099e839e67ffcafe22680240.tar.xz
eclipse.platform.swt-76ea0a71909995e0099e839e67ffcafe22680240.zip
Make gdk_draw_arc dynamic.
Every usage is checked that a cairo codepath is executed and returns before the gdk_draw_arc call.
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c10
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_custom.h1
-rw-r--r--bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java3
3 files changed, 11 insertions, 3 deletions
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c
index dad1ee406a..812f921007 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c
+++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os.c
@@ -5234,7 +5234,15 @@ JNIEXPORT void JNICALL OS_NATIVE(_1gdk_1draw_1arc)
(JNIEnv *env, jclass that, jintLong arg0, jintLong arg1, jint arg2, jint arg3, jint arg4, jint arg5, jint arg6, jint arg7, jint arg8)
{
OS_NATIVE_ENTER(env, that, _1gdk_1draw_1arc_FUNC);
- gdk_draw_arc((GdkDrawable *)arg0, (GdkGC *)arg1, (gint)arg2, (gint)arg3, (gint)arg4, (gint)arg5, (gint)arg6, (gint)arg7, (gint)arg8);
+/*
+ gdk_draw_arc(arg0, arg1, (gint)arg2, (gint)arg3, (gint)arg4, (gint)arg5, (gint)arg6, (gint)arg7, (gint)arg8);
+*/
+ {
+ OS_LOAD_FUNCTION(fp, gdk_draw_arc)
+ if (fp) {
+ ((void (CALLING_CONVENTION*)(jintLong, jintLong, gint, gint, gint, gint, gint, gint, gint))fp)(arg0, arg1, (gint)arg2, (gint)arg3, (gint)arg4, (gint)arg5, (gint)arg6, (gint)arg7, (gint)arg8);
+ }
+ }
OS_NATIVE_EXIT(env, that, _1gdk_1draw_1arc_FUNC);
}
#endif
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_custom.h b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_custom.h
index 0d78a07b38..079b754744 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_custom.h
+++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/library/os_custom.h
@@ -147,6 +147,7 @@
#define gdk_cursor_new_from_pixbuf_LIB LIB_GDK
#define gdk_display_get_default_LIB LIB_GDK
#define gdk_display_supports_cursor_color_LIB LIB_GDK
+#define gdk_draw_arc_LIB LIB_GDK
#define gdk_draw_pixbuf_LIB LIB_GDK
#define gdk_pixbuf_save_to_bufferv_LIB LIB_GDK
#define gdk_screen_get_default_LIB LIB_GDK
diff --git a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java
index 32677c1b48..0e68a83bdf 100644
--- a/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java
+++ b/bundles/org.eclipse.swt/Eclipse SWT PI/gtk/org/eclipse/swt/internal/gtk/OS.java
@@ -3860,8 +3860,7 @@ public static final void gdk_drag_status(int /*long*/ context, int action, int t
}
}
/**
- * @param drawable cast=(GdkDrawable *)
- * @param gc cast=(GdkGC *)
+ * @method flags=dynamic
* @param filled cast=(gint)
* @param x cast=(gint)
* @param y cast=(gint)

Back to the top