Opened 2 years ago

Last modified 2 years ago

#6513 closed defect

Segfault on autostart nonVisual games — at Version 2

Reported by: Langbart Owned by: bb
Priority: Release Blocker Milestone: Alpha 26
Component: Core engine Keywords:
Cc: Patch: Phab:D4527

Description (last modified by Langbart)

issue

  • start a game from the command line with the -autostart-nonvisual flag
binaries/system/pyrogenesis -conf=mod.enabledmods:"public" -autostart="random/mainland" -autostart-nonvisual
  • Segfault
  • bb has already created a patch. It is better to also create a ticket to increase the chances that it will not be forgotten.
23:14 <@Stan> Langbart: you can also create a rb for non visual mode if you like

lldb

(lldb) run -conf=mod.enabledmods:"public" -autostart="random/mainland" -autostart-nonvisual
Process 79078 launched: '/Users/paria/0ad/binaries/system/pyrogenesis' (x86_64)
TIMER| InitVfs: 6.383 ms
FILES| Main log written to '/Users/paria/Library/Application Support/0ad/logs/mainlog.html'
FILES| Interesting log written to '/Users/paria/Library/Application Support/0ad/logs/interestinglog.html'
TIMER| CONFIG_Init: 7.804 ms
Assertion failed: "ms_singleton"
Location: Singleton.h:51 (GetSingleton)

Call stack:

(error while dumping stack: Function not supported)
errno = 0 (No error reported here)
OS error = ?


(C)ontinue, (S)uppress, (B)reak, Launch (D)ebugger, or (E)xit?
e
Redirecting call to abort() to mozalloc_abort

pyrogenesis was compiled with optimization - stepping may behave oddly; variables may not be available.
Process 79078 stopped
* thread #1, name = 'main', queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
    frame #0: 0x000000010109c1f0 pyrogenesis`::mozalloc_abort(msg=<unavailable>) at mozalloc_abort.cpp:33:3 [opt]
   30  	#ifdef MOZ_WIDGET_ANDROID
   31  	  abortThroughJava(msg);
   32  	#endif
-> 33  	  MOZ_CRASH();
   34  	}
   35  	
   36  	#ifdef MOZ_WIDGET_ANDROID
Target 0: (pyrogenesis) stopped.
(lldb) bt
* thread #1, name = 'main', queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
  * frame #0: 0x000000010109c1f0 pyrogenesis`::mozalloc_abort(msg=<unavailable>) at mozalloc_abort.cpp:33:3 [opt]
    frame #1: 0x0000000101b93e3d pyrogenesis`::abort() at mozalloc_abort.cpp:82:3 [opt]
    frame #2: 0x00000001004f2a86 pyrogenesis`sys_display_error(text=<unavailable>, flags=6) at unix.cpp:268:4 [opt]
    frame #3: 0x00000001004d5203 pyrogenesis`debug_DisplayError(wchar_t const*, unsigned long, void*, wchar_t const*, wchar_t const*, int, char const*, long volatile*) [inlined] CallDisplayError(text=L"Assertion failed: \"ms_singleton\"\r\nLocation: Singleton.h:51 (GetSingleton)\r\n\r\nCall stack:\r\n\r\n(error while dumping stack: Function not supported)\r\nerrno = 0 (No error reported here)\r\nOS error = ?\r\n", flags=6) at debug.cpp:374:8 [opt]
    frame #4: 0x00000001004d51e6 pyrogenesis`debug_DisplayError(description=L"Assertion failed: \"ms_singleton\"", flags=6, context=0x00007ffeefbfe000, lastFuncToSkip=<no summary available>, pathname=<no summary available>, line=<no summary available>, func=<no value available>, suppress=<no summary available>) at debug.cpp:460 [opt]
    frame #5: 0x00000001004d5a6e pyrogenesis`debug_OnAssertionFailure(expr=<no summary available>, suppress=<no summary available>, file=<no summary available>, line=<no summary available>, func=<no value available>) at debug.cpp:547:9 [opt]
    frame #6: 0x00000001002ce960 pyrogenesis`CFontMetrics::CFontMetrics(CStrIntern) [inlined] Singleton<CRenderer>::GetSingleton() at Singleton.h:51:3 [opt]
    frame #7: 0x00000001002ce930 pyrogenesis`CFontMetrics::CFontMetrics(this=<no summary available>, font=CStrIntern @ scalar) at FontMetrics.cpp:29 [opt]
    frame #8: 0x00000001001d993c pyrogenesis`CConsole::Init(this=<no summary available>) at CConsole.cpp:97:21 [opt]
    frame #9: 0x0000000100214e5f pyrogenesis`InitPs(setup_gui=<no summary available>, gui_page=<no summary available>, srcScriptInterface=<no summary available>, initData=JS::HandleValue @ scalar) at GameSetup.cpp:201:14 [opt]
    frame #10: 0x0000000100213a36 pyrogenesis`Autostart(args=<no summary available>) at GameSetup.cpp:1127:3 [opt]
    frame #11: 0x00000001002151eb pyrogenesis`InitNonVisual(args=<no summary available>) at GameSetup.cpp:721:2 [opt] [artificial]
    frame #12: 0x0000000100004aaa pyrogenesis`RunGameOrAtlas(argc=<no summary available>, argv=<no summary available>) at main.cpp:672:4 [opt]
    frame #13: 0x00000001000035b6 pyrogenesis`main(argc=<no summary available>, argv=<no summary available>) at main.cpp:743:2 [opt]
    frame #14: 0x00007fff68073cc9 libdyld.dylib`start + 1
(lldb) 

Change History (2)

comment:1 by Silier, 2 years ago

Owner: set to bb

comment:2 by Langbart, 2 years ago

Description: modified (diff)

adding a lldb with latest GIT version [26831]

Note: See TracTickets for help on using tickets.