pierstocazzo / jmonkeyengine

Automatically exported from code.google.com/p/jmonkeyengine
0 stars 0 forks source link

TestStandardGame exists with access violation #65

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. checkout latest jme2 trunk
2. run jmetest.game.TestStandardGame
3. press escape to exit the test

What is the expected output? What do you see instead?
Expected output is no vm error, but I get:
#
# An unexpected error has been detected by Java Runtime Environment:
#
#  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x0471c059, pid=1900, 
tid=3560
#
# Java VM: Java HotSpot(TM) Client VM (11.0-b15 mixed mode, sharing 
windows-x86)
# Problematic frame:
# C  [OpenAL32.dll+0xc059]

What version of the product are you using? On what operating system?
tested latest trunk on windows xp sp3

Please provide any additional information below.

I have no problems with SimpleGame

Original issue reported on code.google.com by so@deluxe-design.at on 25 Jun 2009 at 4:38

GoogleCodeExporter commented 9 years ago
It seems that the cause of this problem is that DebugGameState simply calls 
System.exit to exit the program as opposed to SimpleGame which uses the 
AbstractGame.finish method. 
If I pass the StandardGame instance to the DebugGameState instance and call 
StandardGame.finish instead of System.exit there is no VM error.
The attached patch demonstrates this workaround.

Original comment by so@deluxe-design.at on 25 Jun 2009 at 5:23

Attachments:

GoogleCodeExporter commented 9 years ago
The problem here is, that DebugGameState or GameStates in common can also be 
used
with other game implementations.
So passing StandardGame and calling game.finish() is not a good solution.

Using AbstractGame instead StandardGame should work tho.

Original comment by christoph.luder on 9 Jul 2009 at 6:39

GoogleCodeExporter commented 9 years ago
fixed with r5142

Original comment by christoph.luder on 23 Apr 2010 at 8:42