Opened 17 months ago
Closed 17 months ago
#6658 closed defect (invalid)
Game crashes for changeset 27115 on sandbox_ptolemies map
Reported by: | Langbart | Owned by: | |
---|---|---|---|
Priority: | Should Have | Milestone: | |
Component: | Core engine | Keywords: | |
Cc: | Patch: |
Description
to reproduce
- start the
scenarios/sandbox_ptolemies.xml
map - game crashes before you can spawn into the map, you only see the loading page
logs
Assertion failed: "!EntityExists(ent)" Location: ComponentManager.cpp:790 (AllocateEntityHandle) 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?
lldb
❯ lldb /Users/paria/Developer/0ad/binaries/system/pyrogenesis (lldb) target create "/Users/paria/Developer/0ad/binaries/system/pyrogenesis" Current executable set to '/Users/paria/Developer/0ad/binaries/system/pyrogenesis' (x86_64). (lldb) run Process 96379 launched: '/Users/paria/Developer/0ad/binaries/system/pyrogenesis' (x86_64) TIMER| InitVfs: 7.205 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.981 ms 2022-11-23 02:43:33.706275+0100 pyrogenesis[96379:781639] [plugin] AddInstanceForFactory: No factory registered for id <CFUUID 0x107e0cf60> F8BB1C28-BAE8-11D6-9C31-00039315CD46 2022-11-23 02:43:33.759227+0100 pyrogenesis[96379:781639] HALC_ShellDriverPlugIn::Open: Can't get a pointer to the Open routine 2022-11-23 02:43:33.759733+0100 pyrogenesis[96379:781639] HALC_ShellDriverPlugIn::Open: Can't get a pointer to the Open routine Sound: AlcInit success, using Built-in Output FILES| UserReport written to '/Users/paria/Library/Application Support/0ad/logs/userreport_hwdetect.txt' TIMER| RunHardwareDetection: 5.527 ms FILES| Hardware details written to '/Users/paria/Library/Application Support/0ad/logs/system_info.txt' TIMER| write_sys_info: 16.745 ms TIMER| InitRenderer: 8.966 ms TIMER| ps_console: 11.179 ms TIMER| ps_lang_hotkeys: 5.032 ms TIMER| common/modern/setup.xml: 1.849 ms TIMER| common/modern/styles.xml: 477 us TIMER| common/modern/sprites.xml: 1.595 ms TIMER| common/global.xml: 899 us TIMER| common/setup.xml: 553 us TIMER| common/sprites.xml: 725 us TIMER| common/styles.xml: 458 us TIMER| pregame/backgrounds/: 2.361 ms TIMER| pregame/sprites.xml: 259 us TIMER| pregame/styles.xml: 155 us TIMER| pregame/mainmenu.xml: 60.065 ms 2022-11-23 02:43:37.372842+0100 pyrogenesis[96379:781766] flock failed to lock maps file: errno = 35 2022-11-23 02:43:37.373520+0100 pyrogenesis[96379:781766] flock failed to lock maps file: errno = 35 TIMER| common/modern/setup.xml: 201 us TIMER| common/modern/styles.xml: 191 us TIMER| common/modern/sprites.xml: 1.485 ms TIMER| common/setup.xml: 350 us TIMER| common/sprites.xml: 481 us TIMER| common/styles.xml: 131 us TIMER| gamesetup/setup.xml: 637 us TIMER| gamesetup/styles.xml: 360 us TIMER| gamesetup/gamesetup.xml: 164.871 ms TIMER| common/global.xml: 552 us FILES| JSON data written to '/Users/paria/Library/Application Support/0ad/config/matchsettings.json' FILES| Replay written to '/Users/paria/Library/Application Support/0ad/replays/0.0.27/2022-11-23_0018' TIMER| common/modern/setup.xml: 202 us TIMER| common/modern/styles.xml: 271 us TIMER| common/modern/sprites.xml: 1.303 ms TIMER| common/global.xml: 317 us TIMER| common/setup.xml: 268 us TIMER| common/sprites.xml: 467 us TIMER| common/styles.xml: 128 us TIMER| loading/styles.xml: 1.784 ms TIMER| loading/sprites.xml: 481 us TIMER| loading/loading.xml: 20.47 ms Assertion failed: "!EntityExists(ent)" Location: ComponentManager.cpp:790 (AllocateEntityHandle) 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 96379 stopped * thread #1, name = 'main', queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0) frame #0: 0x00000001010ab700 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: 0x00000001010ab700 pyrogenesis`::mozalloc_abort(msg=<unavailable>) at mozalloc_abort.cpp:33:3 [opt] frame #1: 0x0000000101bc445d pyrogenesis`::abort() at mozalloc_abort.cpp:82:3 [opt] frame #2: 0x0000000100501f96 pyrogenesis`sys_display_error(text=<unavailable>, flags=6) at unix.cpp:268:4 [opt] frame #3: 0x00000001004e46f3 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: \"!EntityExists(ent)\"\r\nLocation: ComponentManager.cpp:790 (AllocateEntityHandle)\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: 0x00000001004e46d6 pyrogenesis`debug_DisplayError(description=L"Assertion failed: \"!EntityExists(ent)\"", flags=6, context=0x00007ffeefbfd940, 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: 0x00000001004e4f5e 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: 0x0000000100193e86 pyrogenesis`CComponentManager::AllocateEntityHandle(this=<no summary available>, ent=<no summary available>) at ComponentManager.cpp:790:2 [opt] frame #7: 0x0000000100190ded pyrogenesis`CComponentManager::AddEntity(this=<no summary available>, templateName=L"", ent=<no summary available>) at ComponentManager.cpp:840:25 [opt] frame #8: 0x00000001002eaae1 pyrogenesis`CXMLReader::ReadEntities(this=<no summary available>, parent=(m_Pointer = <no value available>), end_time=<no summary available>) at MapReader.cpp:1054:25 [opt] frame #9: 0x00000001002ecb03 pyrogenesis`CXMLReader::ProgressiveReadEntities(this=<no summary available>) at MapReader.cpp:1189:11 [opt] frame #10: 0x00000001002de6e1 pyrogenesis`CMapReader::ReadXMLEntities(this=<no summary available>) at MapReader.cpp:1251:24 [opt] frame #11: 0x00000001002311f9 pyrogenesis`LDR_ProgressiveLoad(time_budget=<no summary available>, description=<no summary available>, max_chars=<no summary available>, progress_percent=<no summary available>) at Loader.cpp:217:16 [opt] frame #12: 0x0000000100004734 pyrogenesis`RunGameOrAtlas(PS::span<char const* const>) at main.cpp:304:16 [opt] frame #13: 0x0000000100004670 pyrogenesis`RunGameOrAtlas(PS::span<char const* const>) [inlined] Frame() at main.cpp:398 [opt] frame #14: 0x0000000100004450 pyrogenesis`RunGameOrAtlas(argv=const PS::span<const char *const> @ scalar) at main.cpp:687 [opt] frame #15: 0x0000000100002a37 pyrogenesis`main(argc=<no summary available>, argv=<no summary available>) at main.cpp:740:2 [opt] frame #16: 0x00007fff6f3e9cc9 libdyld.dylib`start + 1
bisect
crash came with [27115]
commit d3376ae06fa996b8ab7c98eaa53b759c61db0c89 Author: wowgetoffyourcellphone <wowgetoffyourcellphone@3db68df2-c116-0410-a063-a993310a9797> Date: 05/Oct/22 [Alpha 27][Art][Portraits][Templates] Moving portrait textures to their own specific folders This commit is for the templates git-svn-id: https://svn.wildfiregames.com/public/ps/trunk@27115 3db68df2-c116-0410-a063-a993310a9797 358 files changed, 396 insertions(+), 357 deletions(-)
Change History (3)
comment:1 by , 17 months ago
comment:2 by , 17 months ago
Either deleting
simulation/templates/units/ptol/siege_juggernaut.xml
or this part below stops the crash from happening.
-
binaries/data/mods/public/simulation/templates/units/ptol/champion_juggernaut.xml
a b 33 33 <TrainingRestrictions> 34 34 <Category>Juggernaut</Category> 35 35 </TrainingRestrictions> 36 <TurretHolder> 37 <TurretPoints> 38 <Siege> 39 <Template>units/ptol/siege_juggernaut</Template> 40 <Ejectable>false</Ejectable> 41 <X>0</X> 42 <Y>4.0</Y> 43 <Z>-15.5</Z> 44 <Angle>0</Angle> 45 </Siege> 46 </TurretPoints> 47 </TurretHolder> 36 48 <VisualActor> 37 49 <Actor>structures/romans/quinquereme.xml</Actor> 38 50 </VisualActor>
Update
all maps with the units/ptol/champion_juggernaut
template simply need to be updated:
# 0ad/binaries/data/mods/public/maps
❯ rg --files-with-matches units/ptol/champion_juggernaut
scenarios/sandbox_ptolemies.xml
scenarios/sandbox_ptolemies_02.xml
example
-
binaries/data/mods/public/maps/scenarios/sandbox_ptolemies_02.xml
a b 13508 13508 <Entity uid="5493"> 13509 13509 <Template>units/ptol/champion_juggernaut</Template> 13510 13510 <Player>1</Player> 13511 <Turrets> 13512 <Turret turret="Siege" uid="5864"/> 13513 </Turrets> 13511 13514 <Position x="631.37598" z="721.02466"/> 13512 13515 <Orientation y="0.9169"/> 13513 13516 <Actor seed="33800"/> 13514 13517 </Entity> 13518 <Entity uid="5864"> 13519 <Template>units/ptol/siege_juggernaut</Template> 13520 <Player>1</Player> 13521 <Position x="498.7744" z="478.97657"/> 13522 <Orientation y="0"/> 13523 </Entity> 13515 13524 <Entity uid="5494"> 13516 13525 <Template>units/ptol/hero_cleopatra_vii</Template> 13517 13526 <Player>1</Player>
comment:3 by , 17 months ago
Milestone: | Alpha 27 |
---|---|
Resolution: | → invalid |
Status: | new → closed |
unintentional code commit caused the problem, it was reverted with [27246].
setting the ticket to invalid
Note:
See TracTickets
for help on using tickets.
It does not like the addition of
simulation/templates/units/ptol/siege_juggernaut.xml