summaryrefslogtreecommitdiffstats
path: root/make/glx-x11.cfg
diff options
context:
space:
mode:
Diffstat (limited to 'make/glx-x11.cfg')
-rw-r--r--make/glx-x11.cfg24
1 files changed, 20 insertions, 4 deletions
diff --git a/make/glx-x11.cfg b/make/glx-x11.cfg
index 39098f0a8..fd381760e 100644
--- a/make/glx-x11.cfg
+++ b/make/glx-x11.cfg
@@ -1,6 +1,6 @@
# This .cfg file is used to generate the interface to the GLX routines
# used internally by the X11GLContext implementation.
-Package net.java.games.jogl.impl.x11
+Package com.sun.opengl.impl.x11
JavaClass GLX
Style allstatic
Include gl-common-x11.cfg
@@ -30,15 +30,15 @@ ArgumentIsString XOpenDisplay 0
CustomJavaCode GLX public static native int DefaultScreen(long display);
CustomJavaCode GLX public static native long RootWindow(long display, int screen);
CustomCCode JNIEXPORT jlong JNICALL
-CustomCCode Java_net_java_games_jogl_impl_x11_GLX_DefaultScreen(JNIEnv *env, jclass _unused, jlong display) {
+CustomCCode Java_com_sun_opengl_impl_x11_GLX_DefaultScreen(JNIEnv *env, jclass _unused, jlong display) {
CustomCCode return DefaultScreen((Display*) (intptr_t) display);
CustomCCode }
CustomCCode JNIEXPORT jlong JNICALL
-CustomCCode Java_net_java_games_jogl_impl_x11_GLX_RootWindow(JNIEnv *env, jclass _unused, jlong display, jint screen) {
+CustomCCode Java_com_sun_opengl_impl_x11_GLX_RootWindow(JNIEnv *env, jclass _unused, jlong display, jint screen) {
CustomCCode return RootWindow((Display*) (intptr_t) display, screen);
CustomCCode }
CustomCCode JNIEXPORT jlong JNICALL
-CustomCCode Java_net_java_games_jogl_impl_x11_GLX_dlsym(JNIEnv *env, jclass _unused, jstring name) {
+CustomCCode Java_com_sun_opengl_impl_x11_GLX_dlsym(JNIEnv *env, jclass _unused, jstring name) {
CustomCCode const jbyte* chars;
CustomCCode void* res;
CustomCCode chars = (*env)->GetStringUTFChars(env, name, NULL);
@@ -47,6 +47,22 @@ CustomCCode (*env)->ReleaseStringUTFChars(env, name, chars);
CustomCCode return (jlong) ((intptr_t) res);
CustomCCode }
+# Get returned array's capacity from XGetVisualInfo to be correct
+TemporaryCVariableDeclaration XGetVisualInfo int count;
+TemporaryCVariableAssignment XGetVisualInfo count = _ptr3[0];
+ReturnValueCapacity XGetVisualInfo count * sizeof(XVisualInfo)
+# FIXME: this is terrible but currently needed because we have two
+# overloadings for the third argument (IntBuffer and int[]) and can't
+# specify different glue code for different overloadings
+#
+# The NoNio directive which was present in an earlier version of
+# GlueGen, which resolved this more cleanly, is also not yet available
+# in this version.
+ReturnedArrayLength XGetVisualInfo ((((Object) {3}) instanceof Buffer) ? ((IntBuffer) ((Object) {3})).get(0) : ((int[]) ((Object) {3}))[0])
+ReturnValueCapacity glXChooseVisual sizeof(XVisualInfo)
+ReturnValueCapacity glXGetVisualFromFBConfig sizeof(XVisualInfo)
+ReturnValueCapacity glXGetVisualFromFBConfigSGIX sizeof(XVisualInfo)
+
# Ignore everything not in the GLX core (up through GLX 1.4) aside from glXGetProcAddress
# FIXME: this needs to be kept in sync with the stub headers more than usual
Ignore glXFreeContextEXT