Comments (8)
Okay, that seems like a Locale thing. Valid bug, but.. not related to the crash you're seeing in Quetoo.
from quetoo.
@M-Ro Can you modify Objectivey/Soures/Class.c
and add some printing in teardown
? I'd like to see the class names in both loops (destroy and then free). I wonder if the teardown
(atexit
) routine is being called twice or something? Once for cgame, and once for client?
I can't reproduce this because VirtualBox no longer supports any useful 3D acceleration on macOS, so I can't run a Linux client myself..
from quetoo.
I managed to reproduce this in GDB by specifying set disable-randomization off
before launch. Here's the bt
provided.
(gdb) set disable-randomization off
(gdb) run +quit
Starting program: /usr/local/bin/quetoo +quit
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Quetoo 0.1.0 x86_64-pc-linux-gnu 744928281
[New Thread 0x7fac51bc0640 (LWP 140450)]
Adding path /usr/local/lib/quetoo..
Adding path /usr/local/share/quetoo..
Adding path /usr/local/lib/quetoo/default..
Adding path /usr/local/share/quetoo/default..
Adding path /usr/local/share/quetoo/default/map-pits.pk3..
Adding path /usr/local/share/quetoo/default/map-slimyplace.pk3..
Adding path /usr/local/share/quetoo/default/map-tokays.pk3..
Adding path /usr/local/share/quetoo/default/map-fragpipe.pk3..
Adding path /usr/local/share/quetoo/default/map-rage.pk3..
Adding path /usr/local/share/quetoo/default/player-guard.pk3..
Adding path /usr/local/share/quetoo/default/map-warehouse.pk3..
Adding path /usr/local/share/quetoo/default/player-qforcer.pk3..
Adding path /usr/local/share/quetoo/default/map-claustrophobopolis.pk3..
Adding path /usr/local/share/quetoo/default/map-fractures.pk3..
Adding path /usr/local/share/quetoo/default/player-bunker.pk3..
Adding path /usr/local/share/quetoo/default/textures-common.pk3..
Adding path /usr/local/share/quetoo/default/player-gork.pk3..
Adding path /usr/local/share/quetoo/default/map-hallways.pk3..
Adding path /usr/local/share/quetoo/default/map-darkzone.pk3..
Adding path /usr/local/share/quetoo/default/map-torn.pk3..
Adding path /usr/local/share/quetoo/default/map-gehenna.pk3..
Adding path /usr/local/share/quetoo/default/map-sandbox.pk3..
Adding path /usr/local/share/quetoo/default/player-dragoon.pk3..
Adding path /usr/local/share/quetoo/default/map-lavatomb.pk3..
Adding path /usr/local/share/quetoo/default/map-edge.pk3..
Adding path /home/thorn/.quetoo/default..
Adding path /home/thorn/.quetoo/default/map-2deaths-74660.pk3..
Using /home/thorn/.quetoo/default for writing.
[New Thread 0x7fac513bf640 (LWP 140451)]
[New Thread 0x7fac50bbe640 (LWP 140452)]
[New Thread 0x7fac503bd640 (LWP 140453)]
[New Thread 0x7fac4fbbc640 (LWP 140454)]
[New Thread 0x7fac4f3bb640 (LWP 140455)]
[New Thread 0x7fac4ebba640 (LWP 140456)]
[New Thread 0x7fac4e3b9640 (LWP 140457)]
[New Thread 0x7fac4dbb8640 (LWP 140458)]
[New Thread 0x7fac4d3b7640 (LWP 140459)]
[New Thread 0x7fac4cbb6640 (LWP 140460)]
[New Thread 0x7fac4c3b5640 (LWP 140461)]
[New Thread 0x7fac4bbb4640 (LWP 140462)]
[New Thread 0x7fac4b3b3640 (LWP 140463)]
[New Thread 0x7fac4abb2640 (LWP 140464)]
[New Thread 0x7fac4a3b1640 (LWP 140465)]
[New Thread 0x7fac49bb0640 (LWP 140466)]
[New Thread 0x7fac493af640 (LWP 140467)]
[New Thread 0x7fac48bae640 (LWP 140468)]
[New Thread 0x7fac483ad640 (LWP 140469)]
[New Thread 0x7fac47bac640 (LWP 140470)]
[New Thread 0x7fac473ab640 (LWP 140471)]
[New Thread 0x7fac46baa640 (LWP 140472)]
[New Thread 0x7fac463a9640 (LWP 140473)]
[New Thread 0x7fac45ba8640 (LWP 140474)]
[New Thread 0x7fac453a7640 (LWP 140475)]
[New Thread 0x7fac44ba6640 (LWP 140476)]
[New Thread 0x7fac443a5640 (LWP 140477)]
[New Thread 0x7fac43ba4640 (LWP 140478)]
[New Thread 0x7fac433a3640 (LWP 140479)]
[New Thread 0x7fac42ba2640 (LWP 140480)]
[New Thread 0x7fac423a1640 (LWP 140481)]
[New Thread 0x7fac41ba0640 (LWP 140482)]
Client initialization...
Client console initialized
Couldn't exec autoexec.cfg
Sound initialization...
[New Thread 0x7fac411a0640 (LWP 140483)]
[Thread 0x7fac411a0640 (LWP 140483) exited]
[New Thread 0x7fac411a0640 (LWP 140484)]
[Thread 0x7fac411a0640 (LWP 140484) exited]
[New Thread 0x7fac411a0640 (LWP 140485)]
[New Thread 0x7fac4099f640 (LWP 140486)]
[New Thread 0x7fac4079e640 (LWP 140487)]
Renderer: OpenAL Soft
Vendor: OpenAL Community
Version: 1.1 ALSOFT 1.19.1
Sound initialized (OpenAL, resample @ 44100hz)
[New Thread 0x7fac377d8640 (LWP 140488)]
Video initialization...
Trying 1913x1074..
Setting up OpenGL context..
Renderer: NVIDIA GeForce GTX 1080 Ti/PCIe/SSE2
Vendor: NVIDIA Corporation
Version: 3.3.0 NVIDIA 470.94
Video initialized 1913x1074 (1913x1074) windowed
Client game initialization...
Loading /usr/local/lib/quetoo/default/cgame.so...
Client game module initialization...
Version: 0.1.0 x86_64-pc-linux-gnu 744928281
[New Thread 0x7fac29320640 (LWP 140489)]
[New Thread 0x7fac28b1f640 (LWP 140490)]
[Thread 0x7fac28b1f640 (LWP 140490) exited]
Installer_CompareRevision: https://quetoo.s3.amazonaws.com/revisions/x86_64-pc-linux-gnu: HTTP 404
[Detaching after vfork from child process 140491]
[New Thread 0x7fac28b1f640 (LWP 140498)]
Client game module initialized
Client game initialized
Client initialized
Quetoo 0.1.0 x86_64-pc-linux-gnu 744928281 initialized
Server quit
Client shutdown...
Client game shutdown...
Client game module shutdown...
[Thread 0x7fac28b1f640 (LWP 140498) exited]
Client game down
[Thread 0x7fac377d8640 (LWP 140488) exited]
[Thread 0x7fac4079e640 (LWP 140487) exited]
[Thread 0x7fac4099f640 (LWP 140486) exited]
[Thread 0x7fac411a0640 (LWP 140485) exited]
Client console shutdown
Client down
[Thread 0x7fac50bbe640 (LWP 140452) exited]
[Thread 0x7fac513bf640 (LWP 140451) exited]
[Thread 0x7fac503bd640 (LWP 140453) exited]
[Thread 0x7fac4fbbc640 (LWP 140454) exited]
[Thread 0x7fac4f3bb640 (LWP 140455) exited]
[Thread 0x7fac4ebba640 (LWP 140456) exited]
[Thread 0x7fac4e3b9640 (LWP 140457) exited]
[Thread 0x7fac4dbb8640 (LWP 140458) exited]
[Thread 0x7fac4d3b7640 (LWP 140459) exited]
[Thread 0x7fac4cbb6640 (LWP 140460) exited]
[Thread 0x7fac4c3b5640 (LWP 140461) exited]
[Thread 0x7fac4bbb4640 (LWP 140462) exited]
[Thread 0x7fac4b3b3640 (LWP 140463) exited]
[Thread 0x7fac4abb2640 (LWP 140464) exited]
[Thread 0x7fac4a3b1640 (LWP 140465) exited]
[Thread 0x7fac49bb0640 (LWP 140466) exited]
[Thread 0x7fac493af640 (LWP 140467) exited]
[Thread 0x7fac48bae640 (LWP 140468) exited]
[Thread 0x7fac483ad640 (LWP 140469) exited]
[Thread 0x7fac47bac640 (LWP 140470) exited]
[Thread 0x7fac473ab640 (LWP 140471) exited]
[Thread 0x7fac46baa640 (LWP 140472) exited]
[Thread 0x7fac463a9640 (LWP 140473) exited]
[Thread 0x7fac45ba8640 (LWP 140474) exited]
[Thread 0x7fac453a7640 (LWP 140475) exited]
[Thread 0x7fac44ba6640 (LWP 140476) exited]
[Thread 0x7fac443a5640 (LWP 140477) exited]
[Thread 0x7fac43ba4640 (LWP 140478) exited]
[Thread 0x7fac433a3640 (LWP 140479) exited]
[Thread 0x7fac42ba2640 (LWP 140480) exited]
[Thread 0x7fac423a1640 (LWP 140481) exited]
[Thread 0x7fac41ba0640 (LWP 140482) exited]
[Thread 0x7fac51bc0640 (LWP 140450) exited]
[Thread 0x7fac29320640 (LWP 140489) exited]
--Type <RET> for more, q to quit, c to continue without paging--
Thread 1 "quetoo" received signal SIGSEGV, Segmentation fault.
0x0000000000000031 in ?? ()
(gdb) bt
#0 0x0000000000000031 in ?? ()
#1 0x00007fac54517f5f in release (obj=0x55ccc27c8310) at Class.c:204
#2 0x00007fac545178a0 in destroy (clazz=<optimized out>) at Boole.c:117
#3 0x00007fac54517a95 in teardown () at Class.c:53
#4 0x00007fac54221f67 in __run_exit_handlers (status=status@entry=0,
listp=0x7fac543a0738 <__exit_funcs>, run_list_atexit=run_list_atexit@entry=true,
run_dtors=run_dtors@entry=true) at exit.c:108
#5 0x00007fac5422210a in __GI_exit (status=status@entry=0) at exit.c:139
#6 0x000055ccbc972a54 in Com_Shutdown (fmt=fmt@entry=0x55ccbc9c5143 "Server quit\n")
at common.c:415
#7 0x000055ccbc96adc2 in Quit_f () at main.c:214
#8 0x000055ccbc971e09 in Cbuf_Execute () at cmd.c:165
#9 0x000055ccbc96ad5c in Init () at main.c:342
#10 0x000055ccbc96a7d7 in main (argc=2, argv=0x7ffed021d978) at main.c:438
from quetoo.
If you run the test in Objectively (make check
) do the tests pass or do you see crashes like this?
from quetoo.
One failed test (StringReader), no segfaults.
thorn@ThornNix:~/tmp/Objectively$ make check
Making check in Sources
make[1]: Entering directory '/home/thorn/tmp/Objectively/Sources'
Making check in Objectively
make[2]: Entering directory '/home/thorn/tmp/Objectively/Sources/Objectively'
make[2]: Leaving directory '/home/thorn/tmp/Objectively/Sources/Objectively'
make[2]: Entering directory '/home/thorn/tmp/Objectively/Sources'
make[2]: Nothing to be done for 'check-am'.
make[2]: Leaving directory '/home/thorn/tmp/Objectively/Sources'
make[1]: Leaving directory '/home/thorn/tmp/Objectively/Sources'
Making check in Tests
make[1]: Entering directory '/home/thorn/tmp/Objectively/Tests'
Making check in Objectively
make[2]: Entering directory '/home/thorn/tmp/Objectively/Tests/Objectively'
make Array Boole Data Date Dictionary IndexPath IndexSet JSON Log MutableArray MutableData MutableDictionary MutableIndexSet MutableSet MutableString Null Number Object Operation Regexp Resource Set String StringReader Thread URL URLSession Vector
make[3]: Entering directory '/home/thorn/tmp/Objectively/Tests/Objectively'
make[3]: 'Array' is up to date.
make[3]: 'Boole' is up to date.
make[3]: 'Data' is up to date.
make[3]: 'Date' is up to date.
make[3]: 'Dictionary' is up to date.
make[3]: 'IndexPath' is up to date.
make[3]: 'IndexSet' is up to date.
make[3]: 'JSON' is up to date.
make[3]: 'Log' is up to date.
make[3]: 'MutableArray' is up to date.
make[3]: 'MutableData' is up to date.
make[3]: 'MutableDictionary' is up to date.
make[3]: 'MutableIndexSet' is up to date.
make[3]: 'MutableSet' is up to date.
make[3]: 'MutableString' is up to date.
make[3]: 'Null' is up to date.
make[3]: 'Number' is up to date.
make[3]: 'Object' is up to date.
make[3]: 'Operation' is up to date.
make[3]: 'Regexp' is up to date.
make[3]: 'Resource' is up to date.
make[3]: 'Set' is up to date.
make[3]: 'String' is up to date.
make[3]: 'StringReader' is up to date.
make[3]: 'Thread' is up to date.
make[3]: 'URL' is up to date.
make[3]: 'URLSession' is up to date.
make[3]: 'Vector' is up to date.
make[3]: Leaving directory '/home/thorn/tmp/Objectively/Tests/Objectively'
make check-TESTS
make[3]: Entering directory '/home/thorn/tmp/Objectively/Tests/Objectively'
make[4]: Entering directory '/home/thorn/tmp/Objectively/Tests/Objectively'
PASS: Array
PASS: Boole
PASS: Data
PASS: Date
PASS: Dictionary
PASS: IndexPath
PASS: IndexSet
PASS: JSON
PASS: Log
PASS: MutableArray
PASS: MutableData
PASS: MutableDictionary
PASS: MutableIndexSet
PASS: MutableSet
PASS: MutableString
PASS: Null
PASS: Number
PASS: Object
PASS: Operation
PASS: Regexp
PASS: Resource
PASS: Set
PASS: String
FAIL: StringReader
PASS: Thread
PASS: URL
PASS: URLSession
PASS: Vector
============================================================================
Testsuite summary for Objectively 1.0.0
============================================================================
# TOTAL: 28
# PASS: 27
# SKIP: 0
# XFAIL: 0
# FAIL: 1
# XPASS: 0
# ERROR: 0
============================================================================
See Tests/Objectively/test-suite.log
Please report to [email protected]
============================================================================
make[4]: *** [Makefile:997: test-suite.log] Error 1
make[4]: Leaving directory '/home/thorn/tmp/Objectively/Tests/Objectively'
make[3]: *** [Makefile:1105: check-TESTS] Error 2
make[3]: Leaving directory '/home/thorn/tmp/Objectively/Tests/Objectively'
make[2]: *** [Makefile:1367: check-am] Error 2
make[2]: Leaving directory '/home/thorn/tmp/Objectively/Tests/Objectively'
make[1]: *** [Makefile:370: check-recursive] Error 1
make[1]: Leaving directory '/home/thorn/tmp/Objectively/Tests'
make: *** [Makefile:402: check-recursive] Error 1
from quetoo.
Weird. They pass for me on Ubuntu 18.04. Can you attach the log for StringReader?
from quetoo.
Yep, attached.
Debian testing 5.15.15-1 (2022-01-18)
gcc 11.2.0
from quetoo.
So this is interesting, I've added debug prints to teardown but I can't reproduce that crash anymore. quetoo +quit
no longer segfaults and I'm wondering if you maybe fixed that with todays Objectively fixes.
I do still get a crash if I quit
after loading a map, but that's a separate bug and it occurs way before Objectively's teardown.
quit
Server quit
Server shutdown...
Ai shutdown...
Ai module shutdown...
Ai down
Game shutdown...
Game module shutdown...
Game down
--Type <RET> for more, q to quit, c to continue without paging--
Thread 1 "quetoo" received signal SIGSEGV, Segmentation fault.
_dl_close (_map=0x55cd83640ec0 <game_handle>) at dl-close.c:842
842 dl-close.c: No such file or directory.
(gdb) bt
#0 _dl_close (_map=0x55cd83640ec0 <game_handle>) at dl-close.c:842
#1 0x00007f708a9969e0 in __GI__dl_catch_exception (
exception=exception@entry=0x7fff64334350, operate=0x7f708b018330 <dlclose_doit>,
args=0x55cd83640ec0 <game_handle>) at dl-error-skeleton.c:208
#2 0x00007f708a996a9f in __GI__dl_catch_error (objname=0x55cd83e87090,
errstring=0x55cd83e87098, mallocedp=0x55cd83e87088, operate=<optimized out>,
args=<optimized out>) at dl-error-skeleton.c:227
#3 0x00007f708b018a59 in _dlerror_run (
operate=operate@entry=0x7f708b018330 <dlclose_doit>,
args=0x55cd83640ec0 <game_handle>) at dlerror.c:171
#4 0x00007f708b018364 in __dlclose (handle=<optimized out>) at dlclose.c:46
#5 0x000055cd7f821455 in Sys_CloseLibrary (handle=<optimized out>) at sys.c:145
#6 0x000055cd7f86ef6c in Sv_ShutdownGame () at sv_game.c:426
#7 0x000055cd7f85a43f in Sv_ShutdownServer (
msg=msg@entry=0x7fff64334420 "Server quit\n") at sv_init.c:376
#8 0x000055cd7f85bd49 in Sv_Shutdown (msg=msg@entry=0x7fff64334420 "Server quit\n")
at sv_main.c:900
#9 0x000055cd7f814a68 in Shutdown (msg=0x7fff64334420 "Server quit\n") at main.c:359
#10 0x000055cd7f81ca3f in Com_Shutdown (fmt=fmt@entry=0x55cd7f86f143 "Server quit\n")
at common.c:405
#11 0x000055cd7f814dc2 in Quit_f () at main.c:214
#12 0x000055cd7f81be09 in Cbuf_Execute () at cmd.c:165
#13 0x000055cd7f814858 in Frame (msec=1) at main.c:388
#14 main (argc=1, argv=0x7fff64335248) at main.c:459
from quetoo.
Related Issues (20)
- Player sounds stop playing back after a Com_Error HOT 1
- pmove-bug on certain non-axial geometry HOT 17
- Only megahealth over-health should countdown HOT 7
- Console background is not positioned correctly for all resolutions HOT 3
- Riding movers causes hitching on rider positions HOT 2
- UI Bug in the server creation menu HOT 2
- Soft particles don't work with bmodels HOT 10
- Pan's buglist of map editing issues and other errors HOT 199
- Add CONTENTS_ATMOSPHERIC for misc_dust, misc_fog, etc. HOT 2
- Re-implement simple global fog HOT 3
- Dedicated runs by default in the background HOT 6
- Crash when shooting func_door_secret with certain weapons. HOT 6
- Crash on r_restart / r_toggle_fullscreen HOT 7
- Broken faces HOT 22
- Windows download from Queutoo website is broken HOT 2
- Suggestions /ideas HOT 16
- Antiportals HOT 1
- Multiplayer features HOT 1
- Movement/prediction stutters
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from quetoo.