dethrace-labs / dethrace

Reverse engineering the 1997 game "Carmageddon"
https://twitter.com/dethrace_labs
GNU General Public License v3.0
667 stars 38 forks source link

Crash while ingame on Linux: `*** stack smashing detected ***: terminated` #378

Open juozaspo opened 2 months ago

juozaspo commented 2 months ago

Trying to run dethrace compiled on Ubuntu 22.04 LTS with default cmake configuration some times triggers crash. Data files are from steam release, full log is shown below:

Dethrace version: v0.7.1-5-g673244b
[INFO] Harness_Init DETHRACE_ROOT_DIR is set to '/home/juozas/Games/CARSPLAT/'
Using root directory: /home/juozas/Games/CARSPLAT/
Game mode: Splat Pack
[WARN] S3StopMIDIOutlets stubbed
[WARN] S3StopCDAOutlets stubbed
[WARN] DRSceneRayPick2D Missing material and model pointers to ActorRayPick2D
[WARN] LoadCar Disabling invalid groove binding for pCar_spec->driven_wheels_spin_ref_1=107 (11)
[WARN] S3SetEffects stubbed
*** stack smashing detected ***: terminated

******************
Caught SIGABRT
******************

Stack trace:
0: ?? ??:0
1: ?? ??:0
2: ?? ??:0
3: ?? ??:0
4: ?? ??:0
5: ?? ??:0
6: GetEdgeEdgeCollisions at /home/juozas/dethrace/src/DETHRACE/common/car.c:6626
7: CollideTwoCars at /home/juozas/dethrace/src/DETHRACE/common/car.c:6389
8: CollideTwoCarsRepeatedly at /home/juozas/dethrace/src/DETHRACE/common/car.c:6268
9: CollideTwoCarsWithWalls at /home/juozas/dethrace/src/DETHRACE/common/car.c:6197
10: CrashCarsTogetherSinglePass at /home/juozas/dethrace/src/DETHRACE/common/car.c:6122
11: CrashCarsTogether at /home/juozas/dethrace/src/DETHRACE/common/car.c:5907
12: ApplyPhysicsToCars at /home/juozas/dethrace/src/DETHRACE/common/car.c:1254 (discriminator 1)
13: MainGameLoop at /home/juozas/dethrace/src/DETHRACE/common/mainloop.c:556
14: DoRace at /home/juozas/dethrace/src/DETHRACE/common/mainloop.c:725
15: DoGame at /home/juozas/dethrace/src/DETHRACE/common/structur.c:575
16: DoProgram at /home/juozas/dethrace/src/DETHRACE/common/structur.c:683
17: GameMain at /home/juozas/dethrace/src/DETHRACE/common/main.c:124
18: original_main at /home/juozas/dethrace/src/DETHRACE/pc-win95/win95sys.c:958
19: main at /home/juozas/dethrace/src/DETHRACE/main.c:49
20: ?? ??:0
21: ?? ??:0

Commit: 673244bb8c19cdd3041bfd69e0891c504f58757a BRender commit: dethrace-labs/BRender-v1.3.2@9b6c6d99822f37ad226043b305669fa835822ae0 OS: Ubuntu 22.04 LTS, cmake 3.29.5 from kitware repository, gcc 11.4.0

juozaspo commented 2 months ago

After running under gdb I've generated a more detailed backtrace of the crash that might be useful in the future. The game output with gdb messages are shown below, nacktraces are listed separately.

Terminal output with gdb messages included in the log ``` juozas@xubuntu:~$ cd dethrace/build/ juozas@xubuntu:~/dethrace/build$ export DETHRACE_ROOT_DIR=/home/juozas/Games/CARMA/ juozas@xubuntu:~/dethrace/build$ gdb ./dethrace GNU gdb (Ubuntu 12.1-0ubuntu1~22.04.2) 12.1 Copyright (C) 2022 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: . Find the GDB manual and other documentation resources online at: . For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from ./dethrace... (gdb) r Starting program: /home/juozas/dethrace/build/dethrace This GDB supports auto-downloading debuginfo from the following URLs: https://debuginfod.ubuntu.com Enable debuginfod for this session? (y or [n]) y Debuginfod has been enabled. To make this setting permanent, add 'set debuginfod enabled on' to .gdbinit. [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Dethrace version: v0.7.1-5-g673244b [INFO] Harness_Init DETHRACE_ROOT_DIR is set to '/home/juozas/Games/CARMA/' Using root directory: /home/juozas/Games/CARMA/ Game mode: Carmageddon [WARN] S3StopMIDIOutlets stubbed [WARN] S3StopCDAOutlets stubbed [New Thread 0x7fffd23ff640 (LWP 37512)] [New Thread 0x7fffd1bfe640 (LWP 37513)] [WARN] DRSceneRayPick2D Missing material and model pointers to ActorRayPick2D *** stack smashing detected ***: terminated Thread 1 "dethrace" received signal SIGABRT, Aborted. __pthread_kill_implementation (no_tid=0, signo=6, threadid=140737337583552) at ./nptl/pthread_kill.c:44 Download failed: Netinkamas argumentas. Continuing without source file ./nptl/./nptl/pthread_kill.c. 44 ./nptl/pthread_kill.c: Toks failas ar aplankas neegzistuoja. ```
Full gdb backtrace of main thread ``` (gdb) set pagination off (gdb) bt full #0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=140737337583552) at ./nptl/pthread_kill.c:44 tid = ret = 0 pd = 0x7ffff70367c0 old_mask = {__val = {0 }} ret = pd = old_mask = ret = tid = ret = resultvar = resultvar = __arg3 = __arg2 = __arg1 = _a3 = _a2 = _a1 = __futex = resultvar = __arg3 = __arg2 = __arg1 = _a3 = _a2 = _a1 = __futex = __private = __oldval = result = #1 __pthread_kill_internal (signo=6, threadid=140737337583552) at ./nptl/pthread_kill.c:78 No locals. #2 __GI___pthread_kill (threadid=140737337583552, signo=signo@entry=6) at ./nptl/pthread_kill.c:89 No locals. #3 0x00007ffff7b2c476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26 ret = #4 0x00007ffff7b127f3 in __GI_abort () at ./stdlib/abort.c:79 save_stage = 1 act = {__sigaction_handler = {sa_handler = 0x0, sa_sigaction = 0x0}, sa_mask = {__val = {93824999373504, 93824999352768, 93824999373504, 93824999371168, 93824999373504, 1, 140737305099536, 93824999352688, 1073741824, 93824999352768, 140737273262213, 93824999371168, 93824999352768, 0, 0, 93825002565024}}, sa_flags = 2, sa_restorer = 0x55a68029a600} sigs = {__val = {32, 206828513, 93824997449776, 140737272867329, 93824997449776, 140737274497957, 93824999373504, 140737272868349, 0, 93824999373504, 0, 140737291965120, 0, 140737273424291, 0, 1452050288}} #5 0x00007ffff7b73676 in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7ffff7cc592e "*** %s ***: terminated\n") at ../sysdeps/posix/libc_fatal.c:155 ap = {{gp_offset = 24, fp_offset = 0, overflow_arg_area = 0x7fffffffd340, reg_save_area = 0x7fffffffd2d0}} fd = list = nlist = cp = #6 0x00007ffff7c2059a in __GI___fortify_fail (msg=msg@entry=0x7ffff7cc5916 "stack smashing detected") at ./debug/fortify_fail.c:26 No locals. #7 0x00007ffff7c20566 in __stack_chk_fail () at ./debug/stack_chk_fail.c:24 No locals. #8 0x00005555555a3618 in GetEdgeEdgeCollisions (pB1=0x55555651beb4, pB2=0x55555651c5e4, pM21=0x7fffffffd640, pM12=0x7fffffffd670, pMo21=0x7fffffffd6a0, pMo12=0x7fffffffd6d0, pM1o1=0x7fffffffd700, pPoint_list=0x7fffffffd790, pNorm_list=0x7fffffffd850, pMax=6) at /home/juozas/dethrace/src/DETHRACE/common/car.c:6626 p1 = {v = {-0.259675473, 0.500232458, -0.232331172}} p2 = {v = {-0.325315952, 0.304067969, -0.240063474}} tp1 = {v = {-0.103500001, 0.00690000039, -0.103500001}} tp2 = {v = {-0.103500001, 0.00690000039, 0.103500001}} tp3 = {v = {0.103515446, 0.116028324, -0.103483796}} hp1 = {v = {-0.292091101, 0.440720558, -0.0483429432}} hp2 = {v = {-0.0896217525, 0.43825081, -0.103500001}} hp3 = {v = {0.103500001, 0.339480639, -0.0225900412}} shp1 = {v = {0.103515431, 0.144493252, -0.103483796}} shp2 = {v = {0.103515461, 0.087563403, -0.103483826}} edge = {v = {0, 1, 0}} plane1 = 0 plane2 = 7 plane3 = 1 ts = 3.0611365e-41 i = 4 j = 3 n = 2 __FUNCTION__ = "GetEdgeEdgeCollisions" #9 0x00005555555a0ebf in CollideTwoCars (car1=0x55555651bdb0, car2=0x55555651c4e0, pPass=0) at /home/juozas/dethrace/src/DETHRACE/common/car.c:6389 k = 2 old_k = 2 i = 3 j = 0 dist = ts = new_car1_bnds = {min = {v = {-0.103500001, -0.634038627, -0.103500001}}, max = {v = {1.50218272, 1.62840009, 0.517528892}}} new_car2_bnds = {min = {v = {-0.103500001, 0.00690000039, -0.103500001}}, max = {v = {0.103500001, 1.62840009, 0.103500001}}} bnds = {min = {v = {0.608369172, -0.432689041, 0.113112919}}, max = {v = {1.23544121, 0.0143672824, 1.74487936}}} mat1 = 0x5555568c9204 mat2 = 0x5555568c9564 oldmat1 = 0x55555651bdf4 oldmat2 = 0x55555651c524 inv_mat1 = {m = {{0.91652441, -0.316336125, 0.244773865}, {-0.243768439, 0.0434113182, 0.968861759}, {-0.317111254, -0.947653353, -0.0373245552}, {246.683411, 210.937042, -28.3901253}}} inv_mat2 = {m = {{1, 0, 0}, {0, 1, -3.05175781e-05}, {0, 3.05175781e-05, 1}, {152.76503, -78.3439178, -276.779907}}} inv_oldmat1 = {m = {{0.96342957, -0.0557200201, 0.262104988}, {-0.252155393, 0.142464787, 0.95714283}, {-0.0906720906, -0.98822999, 0.12320523}, {193.155579, 253.526825, -68.892395}}} inv_oldmat2 = {m = {{1, 0, 0}, {0, 1, -3.05175781e-05}, {0, 3.05175781e-05, 1}, {152.76503, -78.3439178, -276.779907}}} car2_to_car1 = {m = {{0.91652441, -0.316336125, 0.244773865}, {-0.24377811, 0.0433823988, 0.968860626}, {-0.317103803, -0.947654665, -0.0373541228}, {-0.195953369, 0.369110107, -0.21754837}}} car1_to_car2 = {m = {{0.91652441, -0.24377811, -0.317103803}, {-0.316336125, 0.0433823988, -0.947654665}, {0.244773865, 0.968860626, -0.0373541228}, {0.349624634, 0.146980286, 0.279541016}}} old_car2_to_car1 = {m = {{0.96342957, -0.0557200201, 0.262104988}, {-0.252158165, 0.142434627, 0.957146585}, {-0.0906643942, -0.988234341, 0.123176023}, {1.12808228, -0.325622559, 0.146385193}}} old_car1_to_car2 = {m = {{0.96342957, -0.252158165, -0.0906643942}, {-0.0557200201, 0.142434627, -0.988234341}, {0.262104988, 0.957146585, 0.123176023}, {-1.14335632, 0.190719604, -0.237548828}}} car1_to_old_car1 = {m = {{0.973227382, 0.227581665, -0.0321653709}, {-0.229788259, 0.96031034, -0.158118293}, {-0.00509704323, 0.161275119, 0.986896992}, {1.4025116, -0.600418091, 0.413146973}}} car2_to_old_car2 = {m = {{1, 0, 0}, {0, 1, 0}, {0, 0, 1}, {0, 0, 0}}} r = {{v = {0.103500001, 0.00690000039, 0.103500001}}, {v = {-0.103500001, 0.238616049, 0.0526798218}}, {v = {0.103500001, 0.00690000039, -0.103500001}}, {v = {-0.103500001, 0.0374289975, 0.0654847324}}, {v = {0.103500001, 4.59163468e-41, 1.50809283e+13}}, {v = {0.103515431, 0.144493252, -0.103483796}}, {v = {0.103500001, 0.34562242, -0.103500001}}, {v = {0.103515461, 0.087563403, -0.103483826}}, {v = {0, 1.40129846e-45, 5.76570167e+13}}, {v = {3.0611365e-41, -0.845558167, 0}}, {v = {0, 0, 0}}, {v = {0, 0, 0}}, {v = {0.270138413, 4.78631707e-40, 9.80908925e-45}}, {v = {5.60519386e-45, 0, 4.59163468e-41}}, {v = {1.4890445e+13, 3.0611365e-41, 1.12103877e-44}}, {v = {0, 5.76570167e+13, 3.0611365e-41}}} n = {{v = {-0.96342957, 0.0557200201, -0.262104988}}, {v = {1, 0, 0}}, {v = {-0.96342957, 0.0557200201, -0.262104988}}, {v = {1, 0, 0}}, {v = {-0.973227382, -0.227581665, 0.0321653709}}, {v = {0.91652447, -0.243778691, -0.317103088}}, {v = {-0.973227382, -0.227581665, 0.0321653709}}, {v = {0.91652447, -0.243778691, -0.317103088}}, {v = {0.144927531, 0, 5.78539726e-30}}, {v = {0.00999999978, -nan(0x7fd930), 0.144927531}}, {v = {0.00100100006, 0.0200200006, 0.0200200006}}, {v = {20, 5.81503004e+13, 0.00724637695}}, {v = {0, 6.9000001, 7.73319935e+13}}, {v = {3.0611365e-41, 5.76573019e+13, 3.0611365e-41}}, {v = {5.76570167e+13, 3.0611365e-41, 1.91801831e+13}}, {v = {3.0611365e-41, 6.97455713e+13, -282.807251}}} sep = {v = {-0.96342957, 0.0557200201, -0.262104988}} tv = {v = {3.0611365e-41, 8.37003708, 1.07294559}} add_point = 0 oldr1 = {v = {1.18491471, 1.00504065, -3.01530004}} oldr2 = {v = {-0.103500001, 1.62840009, 0.103500001}} oldn1 = {v = {-0.000105232, -0.00477797166, 0.999988735}} oldn2 = {v = {0.5200665, 0.0219394714, -0.853844225}} is_old_point_available = 0 __FUNCTION__ = "CollideTwoCars" #10 0x00005555555a067f in CollideTwoCarsRepeatedly (car1=0x55555651bdb0, car2=0x55555651c4e0, dt=0.0399999991) at /home/juozas/dethrace/src/DETHRACE/common/car.c:6268 l = 0 collide = 0 ts = __FUNCTION__ = "CollideTwoCarsRepeatedly" #11 0x00005555555a0250 in CollideTwoCarsWithWalls (car1=0x55555651bdb0, car2=0x55555651c4e0, dt=0.0399999991) at /home/juozas/dethrace/src/DETHRACE/common/car.c:6197 mom1 = {v = {-nan(0x7fd9b0), 4.59163468e-41, 1.49812507e+13}} mom2 = {v = {3.0611365e-41, 5.76608755e+13, 3.0611365e-41}} l = 0 m = 0 n = 1448200032 p = 0 im1 = 0 im2 = 0 __FUNCTION__ = "CollideTwoCarsWithWalls" #12 0x000055555559fdfd in CrashCarsTogetherSinglePass (dt=0.0399999991, pPass=0, collide_list=0x7fffffffda40) at /home/juozas/dethrace/src/DETHRACE/common/car.c:6122 i = 10 j = 12 l = m = n = collided = 0 k = 0 ref1 = ref2 = c1im = 1041720811 c2im = 1055175853 car_1 = 0x55555651bdb0 car_2 = 0x55555651c4e0 car_3 = 0x3ef1aed9be259c86 car_in_middle = 0x7fff3dd5312d car_on_wall = 0x983769c50eeaaf00 __FUNCTION__ = "CrashCarsTogetherSinglePass" #13 0x000055555559f205 in CrashCarsTogether (dt=0.0399999991) at /home/juozas/dethrace/src/DETHRACE/common/car.c:5907 pass = 0 k = 1042477708 i = 13 collide_list = {{ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 1, car = 0x0}, {ref = 1, car = 0x0}, {ref = 1045504179, car = 0xc1eb8dee418f7f04}, {ref = 1064706633, car = 0xbe65987e3c1e4af0}, {ref = 1061381083, car = 0xbf15b3bc3e22f28c}, {ref = 1061921193, car = 0xbc0e2000bd414000}, {ref = 1061246688, car = 0x3ef9a61e3f224b55}, {ref = -1090457444, car = 0x3f5903003ee0468f}, {ref = -1097256448, car = 0xbdcd316d3d327d32}, {ref = 1061246688, car = 0xbe2a7bef3ee0468f}, {ref = -1090457444, car = 0xbf3690393f224b55}, {ref = -1097256448, car = 0xbdb8e9debd9aa96e}, {ref = -9584, car = 0xbed661bbbe5b60b3}, {ref = -1087084744, car = 0x3f02f6673f526e97}, {ref = -1037765825, car = 0x3f751b6741e441bf}, {ref = -1037532075, car = 0x55555651c18c}, {ref = 1448198504, car = 0x55555651c180}, {ref = -9184, car = 0x5555568caa84}, {ref = 1448198692, car = 0x55555651c1ec}, {ref = -9136, car = 0x555555580522 }, {ref = -9152, car = 0x55555651c148}} __FUNCTION__ = "CrashCarsTogether" #14 0x000055555557f5dd in ApplyPhysicsToCars (last_frame_time=24071, pTime_difference=11) at /home/juozas/dethrace/src/DETHRACE/common/car.c:1253 minus_k = {v = {0, 0, 0}} i = 6 old_num_cars = 13 step_number = 1 dam_index = 32767 steering_locked = 0 car = 0x5555565375a0 car_info = 0x5555558bf5b0 non_car = 0x55555651c4e0 time_step = frame_end_time = 24082 __FUNCTION__ = "ApplyPhysicsToCars" #15 0x00005555555fa23f in MainGameLoop () at /home/juozas/dethrace/src/DETHRACE/common/mainloop.c:555 camera_period = 11 start_menu_time = 4294958336 frame_start_time = 341531 result = 4294958320 tried_to_allocate_AR = 1 i = 1432990961 bonus = 32767 __FUNCTION__ = "MainGameLoop" #16 0x00005555555fa8a7 in DoRace () at /home/juozas/dethrace/src/DETHRACE/common/mainloop.c:725 result = 21845 __FUNCTION__ = "DoRace" #17 0x0000555555678168 in DoGame () at /home/juozas/dethrace/src/DETHRACE/common/structur.c:575 options_result = eSO_continue race_result = eRace_completed second_select_race = 1 first_summary_done = 1 i = 30000 __FUNCTION__ = "DoGame" #18 0x0000555555678488 in DoProgram () at /home/juozas/dethrace/src/DETHRACE/common/structur.c:682 No locals. #19 0x00005555555f8773 in GameMain (pArgc=1, pArgv=0x7fffffffe018) at /home/juozas/dethrace/src/DETHRACE/common/main.c:123 CD_dir = "\000@", '\000' , "\257\352\016\305i7\230\030\340\377\377\377\177\000\000\000\000\000\000\000\000\000\000\340\336\377\377\377\177\000\000\355N\267\367\377\177\000\000\261wWUUU\000\000\200W\320\367\377\177\000\000\027\000\000\000\000\000\000\000в\216UUU\000\000h\r\000\000\000\000\000\000\341i\267\367\377\177\000\000\000\336\377\377\377\177\000\000\n\000\000\000\000\000\000\000\200W\320\367\377\177\000\000\000\246\202UUU\000\000@n\213UUU\000\000\000\026\320\367\377\177\000\000@\320\377\367\377\177\000\000\000\257\352\016\305i7\230\026", '\000' , "\220\336\377\377\377\177\000\000\030"... #20 0x000055555569bda4 in original_main (pArgc=1, pArgv=0x7fffffffe018) at /home/juozas/dethrace/src/DETHRACE/pc-win95/win95sys.c:957 arg = 1433433416 i = 1 f = 3.0611365e-41 len = 24 #21 0x00005555555777e8 in main (argc=1, argv=0x7fffffffe018) at /home/juozas/dethrace/src/DETHRACE/main.c:48 No locals. ```
Full gdb backtrace with all threads ``` (gdb) thread apply all bt full Thread 3 (Thread 0x7fffd1bfe640 (LWP 37513) "dethrace"): #0 __futex_abstimed_wait_common64 (private=0, cancel=true, abstime=0x0, op=393, expected=0, futex_word=0x555555f73ab0) at ./nptl/futex-internal.c:57 sc_cancel_oldtype = 0 sc_ret = resultvar = __arg6 = __arg5 = __arg4 = __arg3 = __arg2 = __arg1 = _a6 = _a5 = _a4 = _a3 = _a2 = _a1 = #1 __futex_abstimed_wait_common (cancel=true, private=0, abstime=0x0, clockid=0, expected=0, futex_word=0x555555f73ab0) at ./nptl/futex-internal.c:87 err = clockbit = 256 op = 393 err = clockbit = op = #2 __GI___futex_abstimed_wait_cancelable64 (futex_word=futex_word@entry=0x555555f73ab0, expected=expected@entry=0, clockid=clockid@entry=0, abstime=abstime@entry=0x0, private=private@entry=0) at ./nptl/futex-internal.c:139 No locals. #3 0x00007ffff7b7da41 in __pthread_cond_wait_common (abstime=0x0, clockid=0, mutex=0x555555f73a60, cond=0x555555f73a88) at ./nptl/pthread_cond_wait.c:503 spin = 0 buffer = {__routine = 0x7ffff7b7d720 <__condvar_cleanup_waiting>, __arg = 0x7fffd1bfdb80, __canceltype = 0, __prev = 0x0} cbuffer = {wseq = 0, cond = 0x555555f73a88, mutex = 0x555555f73a60, private = 0} err = g = 0 flags = g1_start = maxspin = 0 signals = result = 0 wseq = 0 seq = 0 private = 0 maxspin = err = result = wseq = g = seq = flags = private = signals = done = g1_start = spin = buffer = cbuffer = s = #4 ___pthread_cond_wait (cond=0x555555f73a88, mutex=0x555555f73a60) at ./nptl/pthread_cond_wait.c:627 No locals. #5 0x0000555555755ee7 in ma_semaphore_wait__posix (pSemaphore=0x555555f73a58) at /home/juozas/dethrace/lib/miniaudio/miniaudio.c:4653 No locals. #6 0x00005555557563e0 in ma_semaphore_wait (pSemaphore=0x555555f73a58) at /home/juozas/dethrace/lib/miniaudio/miniaudio.c:4962 __PRETTY_FUNCTION__ = "ma_semaphore_wait" #7 0x0000555555757bea in ma_job_queue_next (pQueue=0x555555f73a40, pJob=0x7fffd1bfdd20) at /home/juozas/dethrace/lib/miniaudio/miniaudio.c:5940 head = 0 tail = 0 next = 0 #8 0x00005555557ab39c in ma_resource_manager_next_job (pResourceManager=0x555555f737b0, pJob=0x7fffd1bfdd20) at /home/juozas/dethrace/lib/miniaudio/miniaudio.c:56359 No locals. #9 0x00005555557a4b39 in ma_resource_manager_job_thread (pUserData=0x555555f737b0) at /home/juozas/dethrace/lib/miniaudio/miniaudio.c:53617 result = MA_SUCCESS job = {toc = {breakup = {code = 54304, slot = 65535, refcount = 32767}, allocation = 140737488344096}, next = 140737349481555, order = 1442259744, data = {custom = {proc = 0x555555f72310, data0 = 0, data1 = 140736712402496}, resourceManager = {loadDataBufferNode = {pResourceManager = 0x555555f72310, pDataBufferNode = 0x0, pFilePath = 0x7fffd1bfe640 "@\346\277\321\377\177", pFilePathW = 0x7fffd1bfdd70 L"\xd1bfdd90翿\x557936a2啕\x55f72330啕\xeeaaf00\x983769c5\xd1bfddd0翿\x55755fce啕", flags = 1433751467, pInitNotification = 0x0, pDoneNotification = 0x555555f72320, pInitFence = 0x7fffd1bfdd90, pDoneFence = 0x5555557936a2 }, freeDataBufferNode = {pResourceManager = 0x555555f72310, pDataBufferNode = 0x0, pDoneNotification = 0x7fffd1bfe640, pDoneFence = 0x7fffd1bfdd70}, pageDataBufferNode = {pResourceManager = 0x555555f72310, pDataBufferNode = 0x0, pDecoder = 0x7fffd1bfe640, pDoneNotification = 0x7fffd1bfdd70, pDoneFence = 0x555555754fab }, loadDataBuffer = {pDataBuffer = 0x555555f72310, pInitNotification = 0x0, pDoneNotification = 0x7fffd1bfe640, pInitFence = 0x7fffd1bfdd70, pDoneFence = 0x555555754fab , rangeBegInPCMFrames = 0, rangeEndInPCMFrames = 93825002840864, loopPointBegInPCMFrames = 140736712400272, loopPointEndInPCMFrames = 93824994588322, isLooping = 1442259760}, freeDataBuffer = {pDataBuffer = 0x555555f72310, pDoneNotification = 0x0, pDoneFence = 0x7fffd1bfe640}, loadDataStream = {pDataStream = 0x555555f72310, pFilePath = 0x0, pFilePathW = 0x7fffd1bfe640 L"\xd1bfe640翿\x55f73c10啕\xd1bfe640翿\001", initialSeekPoint = 140736712400240, pInitNotification = 0x555555754fab , pInitFence = 0x0}, freeDataStream = {pDataStream = 0x555555f72310, pDoneNotification = 0x0, pDoneFence = 0x7fffd1bfe640}, pageDataStream = {pDataStream = 0x555555f72310, pageIndex = 0}, seekDataStream = {pDataStream = 0x555555f72310, frameIndex = 0}}, device = {aaudio = {reroute = {pDevice = 0x555555f72310, deviceType = 0}}}}} pResourceManager = 0x555555f737b0 __PRETTY_FUNCTION__ = "ma_resource_manager_job_thread" #10 0x0000555555755fce in ma_thread_entry_proxy (pData=0x555555f72320) at /home/juozas/dethrace/lib/miniaudio/miniaudio.c:4704 pProxyData = 0x555555f72320 entryProc = 0x5555557a4ac7 pEntryProcData = 0x555555f737b0 result = 0x0 #11 0x00007ffff7b7eac3 in start_thread (arg=) at ./nptl/pthread_create.c:442 ret = pd = out = unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737488343744, -4776059321839892274, 140736712402496, 11, 140737349412816, 140737488344096, 4775966414245349582, 4776041249113655502}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = #12 0x00007ffff7c10850 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 No locals. Thread 2 (Thread 0x7fffd23ff640 (LWP 37512) "dethrace"): #0 0x00007ffff7c02cce in __ppoll (fds=0x555555f691e0, nfds=3, timeout=, sigmask=0x0) at ../sysdeps/unix/sysv/linux/ppoll.c:42 sc_ret = -514 sc_cancel_oldtype = 0 sc_ret = tval = {tv_sec = 140736720792750, tv_nsec = 93825002799192} #1 0x00007ffff79af621 in pa_mainloop_poll () from /lib/x86_64-linux-gnu/libpulse.so.0 No symbol table info available. #2 0x00007ffff79ba0bb in pa_mainloop_iterate () from /lib/x86_64-linux-gnu/libpulse.so.0 No symbol table info available. #3 0x0000555555764954 in ma_device_data_loop__pulse (pDevice=0x555555ee7100) at /home/juozas/dethrace/lib/miniaudio/miniaudio.c:18321 resultPA = 1 __PRETTY_FUNCTION__ = "ma_device_data_loop__pulse" #4 0x0000555555768938 in ma_worker_thread (pData=0x555555ee7100) at /home/juozas/dethrace/lib/miniaudio/miniaudio.c:27988 startResult = MA_SUCCESS stopResult = MA_SUCCESS pDevice = 0x555555ee7100 __PRETTY_FUNCTION__ = "ma_worker_thread" #5 0x0000555555755fce in ma_thread_entry_proxy (pData=0x555555f72710) at /home/juozas/dethrace/lib/miniaudio/miniaudio.c:4704 pProxyData = 0x555555f72710 entryProc = 0x55555576879e pEntryProcData = 0x555555ee7100 result = 0x0 #6 0x00007ffff7b7eac3 in start_thread (arg=) at ./nptl/pthread_create.c:442 ret = pd = out = unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737488342576, -4776059321839892274, 140736720795200, 11, 140737349412816, 140737488342928, 4775965314196850894, 4776041249113655502}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = #7 0x00007ffff7c10850 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 No locals. Thread 1 (Thread 0x7ffff70367c0 (LWP 37509) "dethrace"): #0 __pthread_kill_implementation (no_tid=0, signo=6, threadid=140737337583552) at ./nptl/pthread_kill.c:44 tid = ret = 0 pd = 0x7ffff70367c0 old_mask = {__val = {0 }} ret = pd = old_mask = ret = tid = ret = resultvar = resultvar = __arg3 = __arg2 = __arg1 = _a3 = _a2 = _a1 = __futex = resultvar = __arg3 = __arg2 = __arg1 = _a3 = _a2 = _a1 = __futex = __private = __oldval = result = #1 __pthread_kill_internal (signo=6, threadid=140737337583552) at ./nptl/pthread_kill.c:78 No locals. #2 __GI___pthread_kill (threadid=140737337583552, signo=signo@entry=6) at ./nptl/pthread_kill.c:89 No locals. #3 0x00007ffff7b2c476 in __GI_raise (sig=sig@entry=6) at ../sysdeps/posix/raise.c:26 ret = #4 0x00007ffff7b127f3 in __GI_abort () at ./stdlib/abort.c:79 save_stage = 1 act = {__sigaction_handler = {sa_handler = 0x0, sa_sigaction = 0x0}, sa_mask = {__val = {93824999373504, 93824999352768, 93824999373504, 93824999371168, 93824999373504, 1, 140737305099536, 93824999352688, 1073741824, 93824999352768, 140737273262213, 93824999371168, 93824999352768, 0, 0, 93825002565024}}, sa_flags = 2, sa_restorer = 0x55a68029a600} sigs = {__val = {32, 206828513, 93824997449776, 140737272867329, 93824997449776, 140737274497957, 93824999373504, 140737272868349, 0, 93824999373504, 0, 140737291965120, 0, 140737273424291, 0, 1452050288}} #5 0x00007ffff7b73676 in __libc_message (action=action@entry=do_abort, fmt=fmt@entry=0x7ffff7cc592e "*** %s ***: terminated\n") at ../sysdeps/posix/libc_fatal.c:155 ap = {{gp_offset = 24, fp_offset = 0, overflow_arg_area = 0x7fffffffd340, reg_save_area = 0x7fffffffd2d0}} fd = list = nlist = cp = #6 0x00007ffff7c2059a in __GI___fortify_fail (msg=msg@entry=0x7ffff7cc5916 "stack smashing detected") at ./debug/fortify_fail.c:26 No locals. #7 0x00007ffff7c20566 in __stack_chk_fail () at ./debug/stack_chk_fail.c:24 No locals. #8 0x00005555555a3618 in GetEdgeEdgeCollisions (pB1=0x55555651beb4, pB2=0x55555651c5e4, pM21=0x7fffffffd640, pM12=0x7fffffffd670, pMo21=0x7fffffffd6a0, pMo12=0x7fffffffd6d0, pM1o1=0x7fffffffd700, pPoint_list=0x7fffffffd790, pNorm_list=0x7fffffffd850, pMax=6) at /home/juozas/dethrace/src/DETHRACE/common/car.c:6626 p1 = {v = {-0.259675473, 0.500232458, -0.232331172}} p2 = {v = {-0.325315952, 0.304067969, -0.240063474}} tp1 = {v = {-0.103500001, 0.00690000039, -0.103500001}} tp2 = {v = {-0.103500001, 0.00690000039, 0.103500001}} tp3 = {v = {0.103515446, 0.116028324, -0.103483796}} hp1 = {v = {-0.292091101, 0.440720558, -0.0483429432}} hp2 = {v = {-0.0896217525, 0.43825081, -0.103500001}} hp3 = {v = {0.103500001, 0.339480639, -0.0225900412}} shp1 = {v = {0.103515431, 0.144493252, -0.103483796}} shp2 = {v = {0.103515461, 0.087563403, -0.103483826}} edge = {v = {0, 1, 0}} plane1 = 0 plane2 = 7 plane3 = 1 ts = 3.0611365e-41 i = 4 j = 3 n = 2 __FUNCTION__ = "GetEdgeEdgeCollisions" #9 0x00005555555a0ebf in CollideTwoCars (car1=0x55555651bdb0, car2=0x55555651c4e0, pPass=0) at /home/juozas/dethrace/src/DETHRACE/common/car.c:6389 k = 2 old_k = 2 i = 3 j = 0 dist = ts = new_car1_bnds = {min = {v = {-0.103500001, -0.634038627, -0.103500001}}, max = {v = {1.50218272, 1.62840009, 0.517528892}}} new_car2_bnds = {min = {v = {-0.103500001, 0.00690000039, -0.103500001}}, max = {v = {0.103500001, 1.62840009, 0.103500001}}} bnds = {min = {v = {0.608369172, -0.432689041, 0.113112919}}, max = {v = {1.23544121, 0.0143672824, 1.74487936}}} mat1 = 0x5555568c9204 mat2 = 0x5555568c9564 oldmat1 = 0x55555651bdf4 oldmat2 = 0x55555651c524 inv_mat1 = {m = {{0.91652441, -0.316336125, 0.244773865}, {-0.243768439, 0.0434113182, 0.968861759}, {-0.317111254, -0.947653353, -0.0373245552}, {246.683411, 210.937042, -28.3901253}}} inv_mat2 = {m = {{1, 0, 0}, {0, 1, -3.05175781e-05}, {0, 3.05175781e-05, 1}, {152.76503, -78.3439178, -276.779907}}} inv_oldmat1 = {m = {{0.96342957, -0.0557200201, 0.262104988}, {-0.252155393, 0.142464787, 0.95714283}, {-0.0906720906, -0.98822999, 0.12320523}, {193.155579, 253.526825, -68.892395}}} inv_oldmat2 = {m = {{1, 0, 0}, {0, 1, -3.05175781e-05}, {0, 3.05175781e-05, 1}, {152.76503, -78.3439178, -276.779907}}} car2_to_car1 = {m = {{0.91652441, -0.316336125, 0.244773865}, {-0.24377811, 0.0433823988, 0.968860626}, {-0.317103803, -0.947654665, -0.0373541228}, {-0.195953369, 0.369110107, -0.21754837}}} car1_to_car2 = {m = {{0.91652441, -0.24377811, -0.317103803}, {-0.316336125, 0.0433823988, -0.947654665}, {0.244773865, 0.968860626, -0.0373541228}, {0.349624634, 0.146980286, 0.279541016}}} old_car2_to_car1 = {m = {{0.96342957, -0.0557200201, 0.262104988}, {-0.252158165, 0.142434627, 0.957146585}, {-0.0906643942, -0.988234341, 0.123176023}, {1.12808228, -0.325622559, 0.146385193}}} old_car1_to_car2 = {m = {{0.96342957, -0.252158165, -0.0906643942}, {-0.0557200201, 0.142434627, -0.988234341}, {0.262104988, 0.957146585, 0.123176023}, {-1.14335632, 0.190719604, -0.237548828}}} car1_to_old_car1 = {m = {{0.973227382, 0.227581665, -0.0321653709}, {-0.229788259, 0.96031034, -0.158118293}, {-0.00509704323, 0.161275119, 0.986896992}, {1.4025116, -0.600418091, 0.413146973}}} car2_to_old_car2 = {m = {{1, 0, 0}, {0, 1, 0}, {0, 0, 1}, {0, 0, 0}}} r = {{v = {0.103500001, 0.00690000039, 0.103500001}}, {v = {-0.103500001, 0.238616049, 0.0526798218}}, {v = {0.103500001, 0.00690000039, -0.103500001}}, {v = {-0.103500001, 0.0374289975, 0.0654847324}}, {v = {0.103500001, 4.59163468e-41, 1.50809283e+13}}, {v = {0.103515431, 0.144493252, -0.103483796}}, {v = {0.103500001, 0.34562242, -0.103500001}}, {v = {0.103515461, 0.087563403, -0.103483826}}, {v = {0, 1.40129846e-45, 5.76570167e+13}}, {v = {3.0611365e-41, -0.845558167, 0}}, {v = {0, 0, 0}}, {v = {0, 0, 0}}, {v = {0.270138413, 4.78631707e-40, 9.80908925e-45}}, {v = {5.60519386e-45, 0, 4.59163468e-41}}, {v = {1.4890445e+13, 3.0611365e-41, 1.12103877e-44}}, {v = {0, 5.76570167e+13, 3.0611365e-41}}} n = {{v = {-0.96342957, 0.0557200201, -0.262104988}}, {v = {1, 0, 0}}, {v = {-0.96342957, 0.0557200201, -0.262104988}}, {v = {1, 0, 0}}, {v = {-0.973227382, -0.227581665, 0.0321653709}}, {v = {0.91652447, -0.243778691, -0.317103088}}, {v = {-0.973227382, -0.227581665, 0.0321653709}}, {v = {0.91652447, -0.243778691, -0.317103088}}, {v = {0.144927531, 0, 5.78539726e-30}}, {v = {0.00999999978, -nan(0x7fd930), 0.144927531}}, {v = {0.00100100006, 0.0200200006, 0.0200200006}}, {v = {20, 5.81503004e+13, 0.00724637695}}, {v = {0, 6.9000001, 7.73319935e+13}}, {v = {3.0611365e-41, 5.76573019e+13, 3.0611365e-41}}, {v = {5.76570167e+13, 3.0611365e-41, 1.91801831e+13}}, {v = {3.0611365e-41, 6.97455713e+13, -282.807251}}} sep = {v = {-0.96342957, 0.0557200201, -0.262104988}} tv = {v = {3.0611365e-41, 8.37003708, 1.07294559}} add_point = 0 oldr1 = {v = {1.18491471, 1.00504065, -3.01530004}} oldr2 = {v = {-0.103500001, 1.62840009, 0.103500001}} oldn1 = {v = {-0.000105232, -0.00477797166, 0.999988735}} oldn2 = {v = {0.5200665, 0.0219394714, -0.853844225}} is_old_point_available = 0 __FUNCTION__ = "CollideTwoCars" #10 0x00005555555a067f in CollideTwoCarsRepeatedly (car1=0x55555651bdb0, car2=0x55555651c4e0, dt=0.0399999991) at /home/juozas/dethrace/src/DETHRACE/common/car.c:6268 l = 0 collide = 0 ts = __FUNCTION__ = "CollideTwoCarsRepeatedly" #11 0x00005555555a0250 in CollideTwoCarsWithWalls (car1=0x55555651bdb0, car2=0x55555651c4e0, dt=0.0399999991) at /home/juozas/dethrace/src/DETHRACE/common/car.c:6197 mom1 = {v = {-nan(0x7fd9b0), 4.59163468e-41, 1.49812507e+13}} mom2 = {v = {3.0611365e-41, 5.76608755e+13, 3.0611365e-41}} l = 0 m = 0 n = 1448200032 p = 0 im1 = 0 im2 = 0 __FUNCTION__ = "CollideTwoCarsWithWalls" #12 0x000055555559fdfd in CrashCarsTogetherSinglePass (dt=0.0399999991, pPass=0, collide_list=0x7fffffffda40) at /home/juozas/dethrace/src/DETHRACE/common/car.c:6122 i = 10 j = 12 l = m = n = collided = 0 k = 0 ref1 = ref2 = c1im = 1041720811 c2im = 1055175853 car_1 = 0x55555651bdb0 car_2 = 0x55555651c4e0 car_3 = 0x3ef1aed9be259c86 car_in_middle = 0x7fff3dd5312d car_on_wall = 0x983769c50eeaaf00 __FUNCTION__ = "CrashCarsTogetherSinglePass" #13 0x000055555559f205 in CrashCarsTogether (dt=0.0399999991) at /home/juozas/dethrace/src/DETHRACE/common/car.c:5907 pass = 0 k = 1042477708 i = 13 collide_list = {{ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 0, car = 0x0}, {ref = 1, car = 0x0}, {ref = 1, car = 0x0}, {ref = 1045504179, car = 0xc1eb8dee418f7f04}, {ref = 1064706633, car = 0xbe65987e3c1e4af0}, {ref = 1061381083, car = 0xbf15b3bc3e22f28c}, {ref = 1061921193, car = 0xbc0e2000bd414000}, {ref = 1061246688, car = 0x3ef9a61e3f224b55}, {ref = -1090457444, car = 0x3f5903003ee0468f}, {ref = -1097256448, car = 0xbdcd316d3d327d32}, {ref = 1061246688, car = 0xbe2a7bef3ee0468f}, {ref = -1090457444, car = 0xbf3690393f224b55}, {ref = -1097256448, car = 0xbdb8e9debd9aa96e}, {ref = -9584, car = 0xbed661bbbe5b60b3}, {ref = -1087084744, car = 0x3f02f6673f526e97}, {ref = -1037765825, car = 0x3f751b6741e441bf}, {ref = -1037532075, car = 0x55555651c18c}, {ref = 1448198504, car = 0x55555651c180}, {ref = -9184, car = 0x5555568caa84}, {ref = 1448198692, car = 0x55555651c1ec}, {ref = -9136, car = 0x555555580522 }, {ref = -9152, car = 0x55555651c148}} __FUNCTION__ = "CrashCarsTogether" #14 0x000055555557f5dd in ApplyPhysicsToCars (last_frame_time=24071, pTime_difference=11) at /home/juozas/dethrace/src/DETHRACE/common/car.c:1253 minus_k = {v = {0, 0, 0}} i = 6 old_num_cars = 13 step_number = 1 dam_index = 32767 steering_locked = 0 car = 0x5555565375a0 car_info = 0x5555558bf5b0 non_car = 0x55555651c4e0 time_step = frame_end_time = 24082 __FUNCTION__ = "ApplyPhysicsToCars" #15 0x00005555555fa23f in MainGameLoop () at /home/juozas/dethrace/src/DETHRACE/common/mainloop.c:555 camera_period = 11 start_menu_time = 4294958336 frame_start_time = 341531 result = 4294958320 tried_to_allocate_AR = 1 i = 1432990961 bonus = 32767 __FUNCTION__ = "MainGameLoop" #16 0x00005555555fa8a7 in DoRace () at /home/juozas/dethrace/src/DETHRACE/common/mainloop.c:725 result = 21845 __FUNCTION__ = "DoRace" #17 0x0000555555678168 in DoGame () at /home/juozas/dethrace/src/DETHRACE/common/structur.c:575 options_result = eSO_continue race_result = eRace_completed second_select_race = 1 first_summary_done = 1 i = 30000 __FUNCTION__ = "DoGame" #18 0x0000555555678488 in DoProgram () at /home/juozas/dethrace/src/DETHRACE/common/structur.c:682 No locals. #19 0x00005555555f8773 in GameMain (pArgc=1, pArgv=0x7fffffffe018) at /home/juozas/dethrace/src/DETHRACE/common/main.c:123 CD_dir = "\000@", '\000' , "\257\352\016\305i7\230\030\340\377\377\377\177\000\000\000\000\000\000\000\000\000\000\340\336\377\377\377\177\000\000\355N\267\367\377\177\000\000\261wWUUU\000\000\200W\320\367\377\177\000\000\027\000\000\000\000\000\000\000в\216UUU\000\000h\r\000\000\000\000\000\000\341i\267\367\377\177\000\000\000\336\377\377\377\177\000\000\n\000\000\000\000\000\000\000\200W\320\367\377\177\000\000\000\246\202UUU\000\000@n\213UUU\000\000\000\026\320\367\377\177\000\000@\320\377\367\377\177\000\000\000\257\352\016\305i7\230\026", '\000' , "\220\336\377\377\377\177\000\000\030"... #20 0x000055555569bda4 in original_main (pArgc=1, pArgv=0x7fffffffe018) at /home/juozas/dethrace/src/DETHRACE/pc-win95/win95sys.c:957 arg = 1433433416 i = 1 f = 3.0611365e-41 len = 24 #21 0x00005555555777e8 in main (argc=1, argv=0x7fffffffe018) at /home/juozas/dethrace/src/DETHRACE/main.c:48 No locals. ```

Edit: Updated the backtrace above, can be reproduced with carmageddon files, backtrace outputs are separated from main game output including gdb messages.