OpenXRay / xray-16

Improved version of the X-Ray Engine, the game engine used in the world-famous S.T.A.L.K.E.R. game series by GSC Game World. Join OpenXRay! ;)
https://discord.gg/sjRMQwv
Other
3.04k stars 456 forks source link

[Linux] - Stalker Clear Sky: I can't enter Agroprom Underground because of Segfault #1316

Closed BielBdeLuna closed 1 year ago

BielBdeLuna commented 1 year ago

Describe the bug when I enter Agroprom Underground for the first time in the story (entering an excavated tunnel in the ground after fighting some Snorks climbing out of it) i get the loading screen for the next level but the game locks up, looking at the trace in GDB is a Segfault

To Reproduce just enter the hole, there is a savegame created but amidst the loading screen it segfaults

Expected behavior just like the other changes between levels before getting to Agroprom, don't segfault

Screenshots nope

BugTrap error report

click for the GDB trace

``` @ typed this message inside the console before the bug ! Unknown command: typed @ now I'll advance into the hole ! Unknown command: now * Saving spawns... * Saving objects... * 20149 objects are successfully saved * Game Biel Bestué de Luna - autosave.sav is successfully saved to file '\home\biel\.local\share\GSC Game World\S.T.A.L.K.E.R. - Clear Sky\_appdata_\savedgames\biel bestué de luna - autosave.sav' - Disconnect - Destroying level * [ D3D ]: textures[238628 K] -cs * phase time: 0 ms * phase cmem: 1554 K * phase time: 163 ms * phase cmem: 1554 K * phase time: 0 ms * phase cmem: 1554 K * Loading spawn registry... * 11404 spawn points are successfully loaded * Loading objects... * 20149 objects are successfully loaded malloc(): invalid next size (unsorted) Thread 1 "Primary thread" received signal SIGABRT, Aborted. __pthread_kill_implementation (no_tid=0, signo=6, threadid=) at ./nptl/pthread_kill.c:44 44 ./nptl/pthread_kill.c: El fitxer o directori no existeix. (gdb) bt #0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=) at ./nptl/pthread_kill.c:44 #1 __pthread_kill_internal (signo=6, threadid=) at ./nptl/pthread_kill.c:78 #2 __GI___pthread_kill (threadid=, signo=signo@entry=6) at ./nptl/pthread_kill.c:89 #3 0x00007ffff6e3c406 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26 #4 0x00007ffff6e2287c in __GI_abort () at ./stdlib/abort.c:79 #5 0x00007ffff6e235a4 in __libc_message (fmt=fmt@entry=0x7ffff6fb890f "%s\n") at ../sysdeps/posix/libc_fatal.c:150 #6 0x00007ffff6e9b147 in malloc_printerr (str=str@entry=0x7ffff6fbbc30 "malloc(): invalid next size (unsorted)") at ./malloc/malloc.c:5651 #7 0x00007ffff6e9e4bc in _int_malloc (av=av@entry=0x7ffff6ff6c80 , bytes=bytes@entry=88) at ./malloc/malloc.c:3991 #8 0x00007ffff6e9f48d in __GI___libc_malloc (bytes=88) at ./malloc/malloc.c:3305 #9 0x00007fffec23d135 in CGameGraph::set_current_level(unsigned int) () from /usr/local/lib/xrAICore.so #10 0x00007fffec239d15 in AISpaceBase::Load(char const*) () from /usr/local/lib/xrAICore.so #11 0x00007fffabaecb09 in CAI_Space::load(char const*) () from /usr/local/lib/xrGame.so #12 0x00007fffabaf54da in CALifeGraphRegistry::setup_current_level() () from /usr/local/lib/xrGame.so #13 0x00007fffabaf5af8 in CALifeGraphRegistry::update(CSE_ALifeDynamicObject*) () from /usr/local/lib/xrGame.so #14 0x00007fffabb2170f in CALifeSimulatorBase::register_object(CSE_ALifeDynamicObject*, bool) () from /usr/local/lib/xrGame.so #15 0x00007fffabb4efe8 in CALifeStorageManager::load(void*, unsigned int const&, char const*) () from /usr/local/lib/xrGame.so #16 0x00007fffabb4f69c in CALifeStorageManager::load(char const*) () from /usr/local/lib/xrGame.so #17 0x00007fffabb54659 in CALifeUpdateManager::load(char const*, bool, bool) () from /usr/local/lib/xrGame.so #18 0x00007fffabb26c82 in CALifeSimulator::CALifeSimulator(IPureServer*, shared_str*) () from /usr/local/lib/xrGame.so #19 0x00007fffabd871c2 in game_sv_Single::Create(shared_str&) () from /usr/local/lib/xrGame.so #20 0x00007fffac27d7c8 in xrServer::Connect(shared_str&, GameDescriptionData&) () from /usr/local/lib/xrGame.so #21 0x00007fffabe721d0 in CLevel::net_start2() () from /usr/local/lib/xrGame.so #22 0x00007ffff7ce373d in CRenderDevice::BeforeFrame() () from /usr/local/lib/xrEngine.so #23 0x00007ffff7ce4bb8 in CRenderDevice::ProcessFrame() () from /usr/local/lib/xrEngine.so #24 0x00007ffff7ce56da in CRenderDevice::message_loop() () from /usr/local/lib/xrEngine.so #25 0x00007ffff7ce59b7 in CRenderDevice::Run() () from /usr/local/lib/xrEngine.so #26 0x00007ffff7cd4c3a in Startup() () from /usr/local/lib/xrEngine.so #27 0x00007ffff7cd579b in RunApplication() () from /usr/local/lib/xrEngine.so #28 0x00005555555558a6 in entry_point(char const*) () #29 0x00005555555555df in main () ```

Desktop (please complete the following information):

Additional context using last commit to OpenXray using Sky Reclamation Project 1.1.4 with last commit too without any optional mods just the widescreen patch

sobkas commented 1 year ago

Can you provide savefile where this problem occurs?

sobkas commented 1 year ago

Does https://github.com/OpenXRay/xray-16/pull/1431 fixes problem?

MegaBurn commented 1 year ago

Yes, #1431 or build of [a97bf6a] fixes the problem. Now I can move through the hole into the underground like any other level transit without crashing. Thank you, my play through had been stuck there for a while.

Xottab-DUTY commented 1 year ago

Hurray!