LWJGL 2.1.0 VM crash

I just updated my game to use LWJGL 2.1.0, but I’m now getting a VM crash:

It rather looks like this new LWJGL is causing my video drivers to crash, which the old version from LWJGL that I used didn’t do.

I’m using:
WinXP SP3, java 1.6.0_13, Mobile Intel 945GM Express

Any idea?

Cheers,
Erik

Is it all LWJGL applications?
I get very similar errors, with the new LWJGL version, if the application terminates pre-maturely before a call to Display.destroy();

Have you tried launching with lwjgl debugger on (command line arguement -Dorg.lwjgl.util.Debug=true);
also maybe turn on trace logging in the java control panel, and check the sun/deployment/log files.

I don’t know if it’s all applications. Do you know another LWJGL 2.1.0 application somewhere that I can try?

Debug gave me this:

[quote]Initial mode: 1280 x 800 x 32 @60Hz
*** START ***
1280x800 1.6
OpenGL14 was reported as available but an entry point is missing
F
Removed 0 duplicate displaymodes
Setting mode 800 x 600 x 32 @60Hz
VSync=true
Throttle=true
getPathFromClassLoader: searching for: OpenAL32
Failed to locate findLibrary method: java.lang.NoSuchMethodException: sun.misc.Launcher$AppClassLoader.findLibrary(java.lang.String)
Failed to locate findLibrary method: java.lang.NoSuchMethodException: java.net.URLClassLoader.findLibrary(java.lang.String)
Failed to locate findLibrary method: java.lang.NoSuchMethodException: java.security.SecureClassLoader.findLibrary(java.lang.String)
getPathFromClassLoader: searching for: lwjgl
Failed to locate findLibrary method: java.lang.NoSuchMethodException: sun.misc.Launcher$AppClassLoader.findLibrary(java.lang.String)
Failed to locate findLibrary method: java.lang.NoSuchMethodException: java.net.URLClassLoader.findLibrary(java.lang.String)
Failed to locate findLibrary method: java.lang.NoSuchMethodException: java.security.SecureClassLoader.findLibrary(java.lang.String)
getPathFromClassLoader: searching for: lwjgl
Failed to locate findLibrary method: java.lang.NoSuchMethodException: sun.misc.Launcher$AppClassLoader.findLibrary(java.lang.String)
Failed to locate findLibrary method: java.lang.NoSuchMethodException: java.net.URLClassLoader.findLibrary(java.lang.String)
Failed to locate findLibrary method: java.lang.NoSuchMethodException: java.security.SecureClassLoader.findLibrary(java.lang.String)
Found 44 OpenAL paths
T
Failed to load D:\Program Files\Java\jre1.6.0\bin\OpenAL64.dll: C
T
Failed to load .\OpenAL64.dll: C
T
Failed to load C:\WINDOWS\Sun\Java\bin\OpenAL64.dll: C
T
Failed to load C:\WINDOWS\system32\OpenAL64.dll: C
T
Failed to load C:\WINDOWS\OpenAL64.dll: C
T
Failed to load C:\Program Files\PC Connectivity Solution\OpenAL64.dll: C
T
Failed to load C:\Perl\bin\OpenAL64.dll: C
T
Failed to load C:\WINDOWS\system32\OpenAL64.dll: C
T
Failed to load C:\WINDOWS\OpenAL64.dll: C
T
Failed to load C:\WINDOWS\System32\Wbem\OpenAL64.dll: C
T
Failed to load C:\Program Files\Java\jdk1.6.0_05\bin\OpenAL64.dll: C
T
Failed to load C:\Program Files\gs\gs8.54\bin\OpenAL64.dll: C
T
Failed to load C:\Program Files\gs\gs8.54\lib\OpenAL64.dll: C
T
Failed to load c:\Program Files\Microsoft SQL Server\90\Tools\binn\OpenAL64.dll: C
T
Failed to load C:\Program Files\Microsoft Driver Test Manager\Controller\OpenAL64.dll: C
T
Failed to load C:\Python25\OpenAL64.dll: C
T
Failed to load C:\Program Files\Common Files\Symbian\tools\OpenAL64.dll: C
T
Failed to load C:\Program Files\CSL Arm Toolchain\bin\OpenAL64.dll: C
T
Failed to load C:\Program Files\TortoiseSVN\bin\OpenAL64.dll: C
T
Failed to load C:\Program Files\Common Files\Nero\Lib\OpenAL64.dll: C
T
Failed to load D:\eclipse\workspace\HighwayBlast\OpenAL64.dll: C
T
/player.png
Texture ‘/player.png’ loaded.
Texture ID 0 assigned
Loaded clip /explo1.wav
Loaded clip /boing.wav
Loaded clip /fx2.wav
Texture ID 1 assigned
Texture ID 2 assigned
/tunnel0.png
Texture ‘/tunnel0.png’ loaded.
Texture ID 3 assigned
/tunnel1.png
Texture ‘/tunnel1.png’ loaded.
Texture ID 4 assigned
/tunnel2.png
Failed to load OpenAL64.dll: C
T
Failed to load D:\Program Files\Java\jre1.6.0\bin\OpenAL32.dll: C
T
F
Texture ‘/tunnel2.png’ loaded.
Texture ID 5 assigned
/tunnel3.png
Texture ‘/tunnel3.png’ loaded.
Texture ID 6 assigned
/bg5.jpg
Texture ‘/bg5.jpg’ loaded.
Texture ID 7 assigned
/title.png
Texture ‘/title.png’ loaded.
Texture ID 8 assigned
/levelscore.png
Texture ‘/levelscore.png’ loaded.
Texture ID 9 assigned
/19x16Lucida.png
Texture ‘/19x16Lucida.png’ loaded.
Texture ID 10 assigned
Frequency:60
/tile.jpg
Texture ‘/tile.jpg’ loaded.
Texture ID 11 assigned
Texture ID 12 assigned
/TileDrag.png
Texture ‘/TileDrag.png’ loaded.
Texture ID 13 assigned
/TileSpeed.png
Texture ‘/TileSpeed.png’ loaded.
Texture ID 14 assigned
/gagaplay.png
Texture ‘/gagaplay.png’ loaded.
Texture ID 15 assigned
Loaded clip /claps.wav
Loaded clip /low1.wav
INIT COMPLETE
[/quote]
After initialization (which seemed to be successful, although the LWJGL debug log output seems a bit worrying), the line that causes the crash is this:

[quote]GL11.glClear(GL11.GL_COLOR_BUFFER_BIT | GL11.GL_DEPTH_BUFFER_BIT);
[/quote]
…which is a bit strange since the INIT already did the same successfully, and it’s such a trivial thing…

the demos over at http://www.lwjgl.org/demos.php should be using LWJGL 2.1.0

I also tested many other versions of LWJGL, and I only got the previous version that the game used to work (1.0 beta; yes I know, it’s ancient :persecutioncomplex:). Other versions I tried (2.0.1, 2.0, 1.1.4) all caused the same VM crash here.

But… the demo’s work fine here, so it’s probably something I’m doing wrong (or at least there is a workaround) so there’s hope…

I think I did something wrong in the initialization process. It’s strange that it didn’t crash in the old LWJGL, but in any case the problem is solved. :slight_smile:

Please can you give us more details to allow us to have a quick fix to provide if someone else makes the same mistake?

When it crashed, I had this in the beginning of the initialization, before setting the display mode:

        Display.setFullscreen(true);
        Display.create();

I moved those lines to after setting the display mode