Index: net/java/games/jogl/impl/windows/WindowsGLContextFactory.java =================================================================== RCS file: /cvs/jogl/src/net/java/games/jogl/impl/windows/WindowsGLContextFactory.java,v retrieving revision 1.5 diff -r1.5 WindowsGLContextFactory.java 67a68 > private static Map/**/ dummyExtensionsMap = new HashMap(); 85a87,91 > public static String getDummyGLExtensions(final GraphicsDevice device) { > String exts = (String) dummyExtensionsMap.get(device); > return (exts == null) ? "" : exts; > } > 104a111,123 > > String availableGLExtensions = ""; > String availableWGLExtensions = ""; > String availableEXTExtensions = ""; > try { > availableWGLExtensions = drawable.getGL().wglGetExtensionsStringARB(WGL.wglGetCurrentDC()); > } catch (GLException e) {} > try { > availableEXTExtensions = drawable.getGL().wglGetExtensionsStringEXT(); > } catch (GLException e) {} > availableGLExtensions = drawable.getGL().glGetString(GL.GL_EXTENSIONS); > dummyExtensionsMap.put(device, availableGLExtensions + " " + availableEXTExtensions + " " + availableWGLExtensions); > Index: net/java/games/jogl/impl/windows/WindowsGLContext.java =================================================================== RCS file: /cvs/jogl/src/net/java/games/jogl/impl/windows/WindowsGLContext.java,v retrieving revision 1.11 diff -r1.11 WindowsGLContext.java 270,280c270 < // It seems that at this point in initialization, < // glGetString(GL.GL_EXTENSIONS) is returning null, so we < // need to use wglGetExtensionsStringARB < String availableWGLExtensions = ""; < // FIXME: would like to do this operation without throwing an < // exception if wglGetExtensionsStringARB isn't available < try { < availableWGLExtensions = dummyGL.wglGetExtensionsStringARB(hdc); < } catch (GLException e) { < // Apparently wglGetExtensionsStringARB wasn't available; ignore < } --- > String availableWGLExtensions = WindowsGLContextFactory.getDummyGLExtensions(device);