View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
---|---|---|---|---|---|---|---|---|---|
0003340 | Spring engine | General | public | 2012-11-23 10:05 | 2012-12-05 19:11 | ||||
Reporter | abma | ||||||||
Assigned To | abma | ||||||||
Priority | high | Severity | crash | Reproducibility | have not tried | ||||
Status | resolved | Resolution | fixed | ||||||
Product Version | |||||||||
Target Version | Fixed in Version | ||||||||
Summary | 0003340: assertion failed: CHoverAirMoveType::SetState(AAirMoveType::AircraftState): Assertion `aircraftState != AIRCRAFT_CRASHING | ||||||||
Description | spring: rts/Sim/MoveTypes/HoverAirMoveType.cpp:122: virtual void CHoverAirMoveType::SetState(AAirMoveType::AircraftState): Assertion `aircraftState != AIRCRAFT_CRASHING || newState == AIRCRAFT_CRASHING' failed. [f=0004415] Error: Aborted (SIGABRT) in spring 91.0.1-419-g370ce7e develop (Debug OMP) [f=0004415] Error: Stacktrace: [f=0004415] Error: <0> /lib/x86_64-linux-gnu/libpthread.so.0(+0xfcb0) [0x7f7f5b7facb0] [f=0004415] Error: <1> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x35) [0x7f7f585ce425] [f=0004415] Error: <2> /lib/x86_64-linux-gnu/libc.so.6(abort+0x17b) [0x7f7f585d1b8b] [f=0004415] Error: <3> /lib/x86_64-linux-gnu/libc.so.6(+0x2f0ee) [0x7f7f585c70ee] [f=0004415] Error: <4> /lib/x86_64-linux-gnu/libc.so.6(+0x2f192) [0x7f7f585c7192] [f=0004415] Error: <5> /home/abma/dev/spring/develop/rts/Sim/MoveTypes/HoverAirMoveType.cpp:124 [f=0004415] Error: <6> /home/abma/dev/spring/develop/rts/Sim/MoveTypes/HoverAirMoveType.cpp:243 [f=0004415] Error: <7> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:808 [f=0004415] Error: <8> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/CommandAI.cpp:1326 [f=0004415] Error: <9> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:414 [f=0004415] Error: <10> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:396 [f=0004415] Error: <11> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:430 [f=0004415] Error: <12> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:406 [f=0004415] Error: <13> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:396 [f=0004415] Error: <14> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:430 [f=0004415] Error: <15> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:406 [f=0004415] Error: <16> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:396 [f=0004415] Error: <17> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:430 [f=0004415] Error: <18> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:406 [f=0004415] Error: <19> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:396 [f=0004415] Error: <20> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:430 [f=0004415] Error: <21> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:406 [f=0004415] Error: <22> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:396 [f=0004415] Error: <23> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:430 [f=0004415] Error: <24> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:406 [f=0004415] Error: <25> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:396 [f=0004415] Error: <26> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/CommandAI.cpp:1449 [f=0004415] Error: <27> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/MobileCAI.cpp:1026 [f=0004415] Error: <28> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/CommandAI.cpp:1048 [f=0004415] Error: <29> /home/abma/dev/spring/develop/rts/Sim/Units/CommandAI/CommandAI.cpp:1401 [f=0004415] Error: <30> /home/abma/dev/spring/develop/rts/System/Object.cpp:51 [f=0004415] Error: <31> /home/abma/dev/spring/develop/rts/System/Object.cpp:69 [f=0004415] Error: <32> /home/abma/dev/spring/develop/rts/Sim/Objects/WorldObject.h:34 [f=0004415] Error: <33> /home/abma/dev/spring/develop/rts/Sim/Objects/SolidObject.cpp:128 [f=0004415] Error: <34> /home/abma/dev/spring/develop/rts/Sim/Units/Unit.cpp:308 (discriminator 10) [f=0004415] Error: <35> /home/abma/dev/spring/develop/rts/Sim/Units/Unit.cpp:308 [f=0004415] Error: <36> /home/abma/dev/spring/develop/rts/Sim/Units/UnitHandler.cpp:182 [f=0004415] Error: <37> /home/abma/dev/spring/develop/rts/Sim/Units/UnitHandler.cpp:209 (discriminator 1) [f=0004415] Error: <38> /home/abma/dev/spring/develop/rts/Game/Game.cpp:1507 [f=0004415] Error: <39> /home/abma/dev/spring/develop/rts/Game/NetCommands.cpp:392 [f=0004415] Error: <40> /home/abma/dev/spring/develop/rts/Game/Game.cpp:902 [f=0004415] Error: <41> /home/abma/dev/spring/develop/rts/lib/gml/gml_base.h:43 [f=0004415] Error: <42> /home/abma/dev/spring/develop/rts/System/SpringApp.cpp:961 [f=0004415] Error: <43> /home/abma/dev/spring/develop/rts/System/SpringApp.cpp:1043 [f=0004415] Error: <44> /home/abma/dev/spring/develop/rts/System/Main.cpp:57 [f=0004415] Error: <45> /home/abma/dev/spring/develop/rts/System/Main.cpp:71 [f=0004415] Error: <46> /home/abma/dev/spring/develop/rts/System/Main.cpp:91 [f=0004415] Error: <47> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xed) [0x7f7f585b976d] [f=0004415] Error: <48> ??:? | ||||||||
Tags | No tags attached. | ||||||||
Checked infolog.txt for Errors | |||||||||
Attached Files |
|
![]() |
|
abma (administrator) 2012-11-25 23:25 |
[f=0000599] Cheating is enabled! spring-headless: rts/Sim/MoveTypes/StrafeAirMoveType.cpp:1053: virtual void CStrafeAirMoveType::SetState(AAirMoveType::AircraftState): Assertion `aircraftState != AIRCRAFT_CRASHING || newState == AIRCRAFT_CRASHING' failed. [f=0001012] Error: Aborted (SIGABRT) in spring 91.0.1-475-g93354df develop (Debug Headless OMP) [f=0001012] Error: Stacktrace: [f=0001012] Error: <0> /lib/x86_64-linux-gnu/libpthread.so.0(+0xfcb0) [0x7f6082a94cb0] [f=0001012] Error: <1> /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x35) [0x7f60826fc425] [f=0001012] Error: <2> /lib/x86_64-linux-gnu/libc.so.6(abort+0x17b) [0x7f60826ffb8b] [f=0001012] Error: <3> /lib/x86_64-linux-gnu/libc.so.6(+0x2f0ee) [0x7f60826f50ee] [f=0001012] Error: <4> /lib/x86_64-linux-gnu/libc.so.6(+0x2f192) [0x7f60826f5192] [f=0001012] Error: <5> /var/tmp/home/dev/spring/develop/rts/Sim/MoveTypes/StrafeAirMoveType.cpp:1055 [f=0001012] Error: <6> /var/tmp/home/dev/spring/develop/rts/Sim/MoveTypes/AAirMoveType.cpp:124 [f=0001012] Error: <7> /home/abma/dev/spring/develop/rts/System/Object.cpp:51 [f=0001012] Error: <8> /home/abma/dev/spring/develop/rts/System/Object.cpp:69 [f=0001012] Error: <9> /var/tmp/home/dev/spring/develop/rts/Sim/Misc/AirBaseHandler.h:26 [f=0001012] Error: <10> /var/tmp/home/dev/spring/develop/rts/Sim/Misc/AirBaseHandler.h:26 [f=0001012] Error: <11> /var/tmp/home/dev/spring/develop/rts/Sim/Misc/AirBaseHandler.cpp:101 [f=0001012] Error: <12> /var/tmp/home/dev/spring/develop/rts/Sim/Units/Unit.cpp:271 [f=0001012] Error: <13> /var/tmp/home/dev/spring/develop/rts/Sim/Units/UnitTypes/Builder.cpp:107 (discriminator 1) [f=0001012] Error: <14> /var/tmp/home/dev/spring/develop/rts/Sim/Units/UnitTypes/Builder.cpp:107 [f=0001012] Error: <15> /var/tmp/home/dev/spring/develop/rts/Sim/Units/UnitHandler.cpp:182 [f=0001012] Error: <16> /var/tmp/home/dev/spring/develop/rts/Sim/Units/UnitHandler.cpp:209 (discriminator 1) [f=0001012] Error: <17> /home/abma/dev/spring/develop/rts/Game/Game.cpp:1508 [f=0001012] Error: <18> /var/tmp/home/dev/spring/develop/rts/Game/NetCommands.cpp:392 [f=0001012] Error: <19> /home/abma/dev/spring/develop/rts/Game/Game.cpp:902 [f=0001012] Error: <20> /home/abma/dev/spring/develop/rts/lib/gml/gml_base.h:43 [f=0001012] Error: <21> /home/abma/dev/spring/develop/rts/System/SpringApp.cpp:1009 [f=0001012] Error: <22> /home/abma/dev/spring/develop/rts/System/SpringApp.cpp:1094 [f=0001012] Error: <23> /home/abma/dev/spring/develop/rts/System/Main.cpp:61 [f=0001012] Error: <24> /home/abma/dev/spring/develop/rts/System/Main.cpp:109 [f=0001012] Error: <25> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xed) [0x7f60826e776d] [f=0001012] Error: <26> ??:? |
abma (administrator) 2012-11-25 23:27 |
i often hit this failed assertion when testing... not sure if commenting out is fine, i guess not... |
cleanrock (reporter) 2012-11-26 18:39 |
I reproduced this with "20121125_232531_Red Comet_91.0.1-475-g93354df develop.sdf" (btw, spaces in all filenames should be avoided imo). This is what happens (taken from gdb callstack on assert): 1. A "Hive" unit is destroyed (DeleteUnitNow) 2. which deregisters its AirBases which destroys its LandingPads which call Detach in ~CObject 3. Detach call DependentDied which call SetState(AIRCRAFT_TAKEOFF) on unit 4. assert/abort is triggered since aircraftState == AIRCRAFT_CRASHING |
cleanrock (reporter) 2012-11-26 19:27 |
With this patch it will at least reach end of demo but crash later: @@ -1600,7 +1600,10 @@ void CUnitScript::SetUnitVal(int val, int param) AAirMoveType* amt = dynamic_cast<AAirMoveType*>(unit->moveType); if (amt != NULL) { if (!!param) { - amt->SetState(AAirMoveType::AIRCRAFT_CRASHING); + const AAirMoveType::AircraftState aircraftState = amt->aircraftState; + if (aircraftState == AAirMoveType::AIRCRAFT_FLYING) { + amt->SetState(AAirMoveType::AIRCRAFT_CRASHING); + } } else { amt->SetState(AAirMoveType::AIRCRAFT_FLYING); } |
abma (administrator) 2012-11-27 03:59 |
comment from the assertion: // once in crashing, we should never change back into another state print newState $2 = AAirMoveType::AIRCRAFT_TAKEOFF i guess that explains all?! (i'm still new to this, so i need help/feedback, too) |
abma (administrator) 2012-11-27 04:16 |
https://github.com/spring/spring/commit/59493e2f091ddd83a08ef3d4ee8d24ab05e21a54 please, please correct me if i'm wrong, i still have no clue about sim... this commit fixed the crash for me, so i hope it is fine... |
![]() |
|||
Date Modified | Username | Field | Change |
---|---|---|---|
2012-11-23 10:05 | abma | New Issue | |
2012-11-23 10:05 | abma | File Added: 20121123_095748_Blue Comet v4_91.0.1-419-g370ce7e develop.sdf | |
2012-11-25 23:25 | abma | Note Added: 0009389 | |
2012-11-25 23:26 | abma | Priority | normal => high |
2012-11-25 23:27 | abma | Note Added: 0009390 | |
2012-11-25 23:32 | abma | File Added: 20121125_232531_Red Comet_91.0.1-475-g93354df develop.sdf | |
2012-11-26 18:39 | cleanrock | Note Added: 0009392 | |
2012-11-26 19:27 | cleanrock | Note Added: 0009393 | |
2012-11-27 03:59 | abma | Note Added: 0009394 | |
2012-11-27 04:16 | abma | Note Added: 0009395 | |
2012-11-27 04:16 | abma | Status | new => resolved |
2012-11-27 04:16 | abma | Resolution | open => fixed |
2012-11-27 04:16 | abma | Assigned To | => abma |
2012-12-02 07:39 | cleanrock | Relationship added | related to 0003347 |
2012-12-05 19:11 | abma | Changeset attached | => spring develop 59493e2f |