2024-03-19 12:57 CET

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0005730Spring engineGeneralpublic2017-08-25 19:52
ReporterFLOZi 
Assigned ToKloot 
PrioritynormalSeveritycrashReproducibilitysometimes
StatusresolvedResolutionfixed 
Product Version103.0 +git 
Target VersionFixed in Version 
Summary0005730: Crash in UnitHandler.cpp:281
DescriptionTranslated stacktrace from 103.0: http://paste.springfiles.com/view/6c7d421a

Infolog for 103.0.1-1282-g7f66d0: http://paste.springfiles.com/view/b0c53b78

Game crashes when salvager (unitname: brv) fills its harvest storage.
Steps To Reproduce1. Grab latest MCL from rapid mcl:test
2. Start the game, once the beacon spawns select a outpost point and buy a Salvage Yard'
3. Spawn some corpses: fs_packrat_x
4. When it deploys the salvage yard should spit out a brv that sets an area reclaim and starts reclaiming
5. Some times game crashes when the brv is full, other times it just sits there and seems the UnitHarvestStorageFull callin is not called.
Additional InformationSeems to be related to this change:

https://github.com/SpringMCLegacy/SpringMCLegacy/commit/1013868cf7ba24e36556a3e27b0f47242b693b48#diff-a9dadff6952bb90f30cd427622b99cdd

Regarding modrules reclaim options.
TagsNo tags attached.
Checked infolog.txt for Errors
Attached Files

-Relationships
+Relationships

-Notes

~0018279

Kloot (developer)

Last edited: 2017-08-25 18:23

View 2 revisions

your g7f66d0 infolog contains "Error: UpdateCallIn: UnitHarvestStorageFull is not implemented" because MCL includes the base GH which didn't know about that callin until g44d93ac. in any case this is the trace I get:


  CreateNanoParticle(curReclaim->midPos, curReclaim->radius * 0.7f, true, (reclaimingUnit && curReclaim->team != team));

  #0 0x0000000000c40a83 in CBuilder::Update (this=0x14340e60 <unitMemPool+53312>) at rts/Sim/Units/UnitTypes/Builder.cpp:345
  #1 0x0000000000c3b873 in CUnitHandler::Update (this=0x7fffa8ba6900) at rts/Sim/Units/UnitHandler.cpp:329
  #2 0x00000000004c92f6 in CGame::SimFrame (this=this@entry=0x7fffbf96cd20) at rts/Game/Game.cpp:1590
  0000003 0x00000000005d1c98 in CGame::ClientReadNet (this=this@entry=0x7fffbf96cd20) at rts/Net/NetCommands.cpp:510
  0000004 0x00000000004d2f6d in CGame::Update (this=0x7fffbf96cd20) at rts/Game/Game.cpp:1060
  0000005 0x00000000008ccb30 in SpringApp::Update (this=this@entry=0x7fffffffddd0) at rts/System/SpringApp.cpp:859
  #6 0x00000000008d0367 in SpringApp::Run (this=this@entry=0x7fffffffddd0) at rts/System/SpringApp.cpp:890
  #7 0x00000000008b78dd in Run (argc=argc@entry=1, argv=argv@entry=0x7fffffffdf38) at rts/System/Main.cpp:43
  #8 0x000000000047710c in main (argc=1, argv=0x7fffffffdf38) at rts/System/Main.cpp:92

curReclaim becomes null via AddBuildPower, which calls into UnitHarvestStorageFull, which issues a new non-queued order to the reclaimer (https://github.com/SpringMCLegacy/SpringMCLegacy/blob/master/LuaRules/Gadgets/outpost_salvage.lua#L212), which causes the BuilderCAI to drop whatever it is doing.

~0018280

Kloot (developer)

Fix 4a4225ac0c4ea69612d0dbc5c36e3ea69ea5bf4c committed to develop branch: fix 0005730, repo: spring changeset id: 8624
+Notes

-Issue History
Date Modified Username Field Change
2017-08-25 17:04 FLOZi New Issue
2017-08-25 17:59 Kloot Note Added: 0018279
2017-08-25 18:23 Kloot Note Edited: 0018279 View Revisions
2017-08-25 19:00 Kloot Assigned To => Kloot
2017-08-25 19:00 Kloot Status new => assigned
2017-08-25 19:52 Kloot Changeset attached => spring develop 4a4225ac
2017-08-25 19:52 Kloot Note Added: 0018280
2017-08-25 19:52 Kloot Status assigned => resolved
2017-08-25 19:52 Kloot Resolution open => fixed
+Issue History