From: <eli...@us...> - 2007-05-27 05:20:00
|
Revision: 2828 http://svn.sourceforge.net/java-game-lib/?rev=2828&view=rev Author: elias_naur Date: 2007-05-26 22:19:19 -0700 (Sat, 26 May 2007) Log Message: ----------- Windows: Check for gl errors after setting swap interval Modified Paths: -------------- trunk/LWJGL/src/java/org/lwjgl/Sys.java trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsContextImplementation.java trunk/LWJGL/src/native/windows/org_lwjgl_opengl_WindowsContextImplementation.c Modified: trunk/LWJGL/src/java/org/lwjgl/Sys.java =================================================================== --- trunk/LWJGL/src/java/org/lwjgl/Sys.java 2007-05-22 22:30:21 UTC (rev 2827) +++ trunk/LWJGL/src/java/org/lwjgl/Sys.java 2007-05-27 05:19:19 UTC (rev 2828) @@ -57,7 +57,7 @@ private static final String VERSION = "1.1"; /** Current version of the JNI library */ - static final int JNI_VERSION = 9; + static final int JNI_VERSION = 10; /** The implementation instance to delegate platform specific behavior to */ private final static SysImplementation implementation; Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsContextImplementation.java =================================================================== --- trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsContextImplementation.java 2007-05-22 22:30:21 UTC (rev 2827) +++ trunk/LWJGL/src/java/org/lwjgl/opengl/WindowsContextImplementation.java 2007-05-27 05:19:19 UTC (rev 2828) @@ -34,6 +34,7 @@ import java.nio.ByteBuffer; import org.lwjgl.LWJGLException; +import org.lwjgl.LWJGLUtil; /** * @@ -96,14 +97,12 @@ private static native boolean nIsCurrent(ByteBuffer context_handle) throws LWJGLException; public void setSwapInterval(int value) { - Context current_context = Context.getCurrentContext(); - if (current_context == null) - throw new IllegalStateException("No context is current"); - synchronized (current_context) { - nSetSwapInterval(current_context.getHandle(), value); - } + boolean success = nSetSwapInterval(value) == GL11.GL_TRUE ? true : false; + if (!success) + LWJGLUtil.log("Failed to set swap interval"); + Util.checkGLError(); } - private static native void nSetSwapInterval(ByteBuffer context_handle, int value); + private static native int nSetSwapInterval(int value); public void destroy(PeerInfo peer_info, ByteBuffer handle) throws LWJGLException { nDestroy(handle); Modified: trunk/LWJGL/src/native/windows/org_lwjgl_opengl_WindowsContextImplementation.c =================================================================== --- trunk/LWJGL/src/native/windows/org_lwjgl_opengl_WindowsContextImplementation.c 2007-05-22 22:30:21 UTC (rev 2827) +++ trunk/LWJGL/src/native/windows/org_lwjgl_opengl_WindowsContextImplementation.c 2007-05-27 05:19:19 UTC (rev 2828) @@ -105,8 +105,8 @@ return wglGetCurrentContext() == context_info->context; } -JNIEXPORT void JNICALL Java_org_lwjgl_opengl_WindowsContextImplementation_nSetSwapInterval - (JNIEnv *env, jclass clazz, jobject context_handle, jint value) { +JNIEXPORT jint JNICALL Java_org_lwjgl_opengl_WindowsContextImplementation_nSetSwapInterval + (JNIEnv *env, jclass clazz, jint value) { WGLExtensions extensions; extgl_InitWGL(&extensions); if (extensions.WGL_EXT_swap_control) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |