Jump to content

[Linux] AL device is not closed by C++


Recommended Posts

When running the C++ compiled version from CodeBlocks or Terminal the AL device is not closed.

 

How to test. Simply generate a blank project and there you go.

 

=== EXECUTING WITHIN THE EDITOR ====

Executing "\media\roland\work\LE\BlankProject\BlankProject"...

Initializing Lua...

Executing file "/media/roland/work/LE/BlankProject/Scripts/Error.lua"

Executing file "/media/roland/work/LE/BlankProject/Scripts/Main.lua"

Setting breakpad minidump AppID = 251810

Steam_SetMinidumpSteamID: Caching Steam ID: 76561198119544889 [API loaded no]

Initializing OpenGL4 graphics driver...

OpenGL version 450

GLSL version 450

Device: GeForce GTX 560/PCIe/SSE2

Loading map "/media/roland/work/LE/BlankProject/Maps/temp.map"...

AL lib: ALc.c:2325: exit(): closing 1 Device

AL lib: ALc.c:2247: alcCloseDevice(): destroying 1 Context(s)

Process Complete.

 

 

=== EXECUTING THE C++ COMPILED VERSION IN CODEBLOCKS ====

Initializing Lua...

Warning: Lua sandboxing disabled.

Executing file "/media/roland/work/LE/BlankProject/Scripts/Error.lua"

Executing file "/media/roland/work/LE/BlankProject/Scripts/Main.lua"

Setting breakpad minidump AppID = 480

Steam_SetMinidumpSteamID: Caching Steam ID: 76561198119544889 [API loaded no]

Initializing OpenGL4 graphics driver...

OpenGL version 450

GLSL version 450

Device: GeForce GTX 560/PCIe/SSE2

Loading map "/media/roland/work/LE/BlankProject/Maps/temp.map"...

Loading font "/usr/share/fonts/truetype/ubuntu-font-family/Ubuntu-L.ttf"...

Loading shader "/media/roland/work/LE/BlankProject/Shaders/Drawing/drawtext.shader"...

AL lib: (EE) alc_cleanup: 1 device not closed

 

Process returned 0 (0x0) execution time : 8.151 s

Press ENTER to continue.

 

=== EXECUTING THE C++ COMPILED VERSION FROM TERMINAL ====

roland@roland-home-linux:/media/roland/work/LE/BlankProject$ ./BlankProject

Initializing Lua...

Warning: Lua sandboxing disabled.

Executing file "/media/roland/work/LE/BlankProject/Scripts/Error.lua"

Executing file "/media/roland/work/LE/BlankProject/Scripts/Main.lua"

Setting breakpad minidump AppID = 480

Steam_SetMinidumpSteamID: Caching Steam ID: 76561198119544889 [API loaded no]

Initializing OpenGL4 graphics driver...

OpenGL version 450

GLSL version 450

Device: GeForce GTX 560/PCIe/SSE2

Loading map "/media/roland/work/LE/BlankProject/Maps/start.map"...

AL lib: (EE) alc_cleanup: 1 device not closed

Roland Strålberg
Website: https://rstralberg.com

Link to comment
Share on other sites

  • 1 month later...
  • 3 weeks later...

Actually, my games seg fault every time they exit:

 

...(bunch of stuff)

Deleting shader "/home/develop/src/boson_life/Shaders/Editor/wireframe.shader"

Deleting sound "<some_sound_file.wav>"

AL lib: (EE) alc_cleanup: 1 device not closed

Segmentation fault (core dumped)

 

Which is probably harmless, but it does not look very good if I ever distributed a game.

 

I have always assumed that it was the AL lib, so I ran under valgrind to confirm.

 

(really lot of valgind output)

==3542== Conditional jump or move depends on uninitialised value(s)

==3542== at 0x7C165D: Leadwerks::NewtonDynamicsCharacterController::ProcessCollisions(Leadwerks::Vec3 const&, Leadwerks::Vec3 const&, Leadwerks::PickInfo&) (NewtonDynamicsCharacterController.cpp:879)

==3542== by 0x7C14A9: Leadwerks::NewtonDynamicsCharacterController::PickGroundConvex(Leadwerks::Vec3 const&, Leadwerks::Vec3 const&, Leadwerks::PickInfo&) (NewtonDynamicsCharacterController.cpp:853)

==3542== by 0x7C0BC8: Leadwerks::NewtonDynamicsCharacterController::AlignToGround() (NewtonDynamicsCharacterController.cpp:792)

==3542== by 0x7BD4AE: Leadwerks::NewtonDynamicsCharacterController::Update() (NewtonDynamicsCharacterController.cpp:241)

==3542== by 0x7CF89E: Leadwerks::NewtonDynamicsSimulation::EndStep() (NewtonDynamicsSimulation.cpp:641)

==3542== by 0x7CF44F: Leadwerks::NewtonDynamicsSimulation::Update() (NewtonDynamicsSimulation.cpp:415)

==3542== by 0x4FE9B8: Leadwerks::World::Update() (World.cpp:657)

==3542== by 0x412429: AppServer::Loop() (AppServer.cpp:345)

==3542== by 0x409618: main (main.cpp:71)

==3542==

AL lib: (EE) alc_cleanup: 1 device not closed

==3542== Thread 3:

==3542== Jump to the invalid address stated on the next line

==3542== at 0x0: ???

==3542== by 0x5251D05: ??? (in /usr/lib/x86_64-linux-gnu/libopenal.so.1.15.1)

==3542== by 0x5262C4B: ??? (in /usr/lib/x86_64-linux-gnu/libopenal.so.1.15.1)

==3542== by 0x52569D9: ??? (in /usr/lib/x86_64-linux-gnu/libopenal.so.1.15.1)

==3542== by 0x5D356A9: start_thread (pthread_create.c:333)

==3542== by 0x6A83EEC: clone (clone.S:109)

==3542== Address 0x0 is not stack'd, malloc'd or (recently) free'd

==3542==

==3542==

==3542== Process terminating with default action of signal 11 (SIGSEGV)

==3542== Bad permissions for mapped region at address 0x0

==3542== at 0x0: ???

==3542== by 0x5251D05: ??? (in /usr/lib/x86_64-linux-gnu/libopenal.so.1.15.1)

==3542== by 0x5262C4B: ??? (in /usr/lib/x86_64-linux-gnu/libopenal.so.1.15.1)

==3542== by 0x52569D9: ??? (in /usr/lib/x86_64-linux-gnu/libopenal.so.1.15.1)

==3542== by 0x5D356A9: start_thread (pthread_create.c:333)

==3542== by 0x6A83EEC: clone (clone.S:109)

==3542==

==3542== HEAP SUMMARY:

==3542== in use at exit: 454,227,093 bytes in 37,825 blocks

==3542== total heap usage: 83,530,078 allocs, 83,492,253 frees, 5,979,040,664 bytes allocated

==3542==

==3542== LEAK SUMMARY:

==3542== definitely lost: 1,288 bytes in 22 blocks

==3542== indirectly lost: 97,019 bytes in 10 blocks

==3542== possibly lost: 418,377,340 bytes in 1,440 blocks

==3542== still reachable: 35,751,446 bytes in 36,353 blocks

==3542== suppressed: 0 bytes in 0 blocks

==3542== Rerun with --leak-check=full to see details of leaked memory

==3542==

==3542== For counts of detected and suppressed errors, rerun with: -v

==3542== Use --track-origins=yes to see where uninitialised values come from

==3542== ERROR SUMMARY: 102706 errors from 26 contexts (suppressed: 0 from 0)

Killed

Link to comment
Share on other sites

  • 2 weeks later...
Guest
This topic is now closed to further replies.
 Share

×
×
  • Create New...