2019-12-14 23:06 CET

View Issue Details Jump to Notes ] Related Changesets ]
IDProjectCategoryView StatusLast Update
0004951Spring engineGeneralpublic2016-02-02 13:14
Reportermalric 
Assigned To 
PrioritynormalSeveritycrashReproducibilityunable to reproduce
StatusresolvedResolutionfixed 
Product Version100.0 
Target VersionFixed in Version 
Summary0004951: Crash when selecting unit
DescriptionWhile specing a game of zero-k with zombie units activated, I did a rectangle selection over a zombie unit, and spring crashed.

Attached infolog and replay.
TagsNo tags attached.
Checked infolog.txt for Errors
Attached Files
  • gz file icon spring_crash.tar.gz (376,830 bytes) 2015-09-11 20:52
  • txt file icon bt_and_bt_full.txt (10,340 bytes) 2015-09-12 08:39 -
    (gdb) bt
    #0  CTeamHandler::AlliedTeams (teamB=4, teamA=16, this=0x16f0eb0) at ../../rts/Sim/Misc/TeamHandler.h:74
    #1  CProjectileDrawer::DrawFlyingPieces (this=this@entry=0x10705700, modelType=modelType@entry=1) at ../../rts/Rendering/ProjectileDrawer.cpp:584
    #2  0x0000000000820e89 in CProjectileDrawer::DrawProjectiles (this=this@entry=0x10705700, modelType=modelType@entry=1, drawReflection=drawReflection@entry=false, 
        drawRefraction=drawRefraction@entry=false) at ../../rts/Rendering/ProjectileDrawer.cpp:409
    #3  0x0000000000820f50 in CProjectileDrawer::Draw (this=0x10705700, drawReflection=false, drawRefraction=false) at ../../rts/Rendering/ProjectileDrawer.cpp:618
    #4  0x000000000085d7e0 in CWorldDrawer::Draw (this=<optimized out>) at ../../rts/Rendering/WorldDrawer.cpp:210
    #5  0x00000000005a544a in CGame::Draw (this=0x20b4370) at ../../rts/Game/Game.cpp:1321
    #6  0x00000000008cc194 in SpringApp::Update (this=this@entry=0x7fffffffe5a0) at ../../rts/System/SpringApp.cpp:946
    #7  0x00000000008d37d8 in SpringApp::Run (this=this@entry=0x7fffffffe5a0) at ../../rts/System/SpringApp.cpp:978
    #8  0x00000000008a819e in Run (argc=argc@entry=2, argv=argv@entry=0x7fffffffe848) at ../../rts/System/Main.cpp:48
    #9  0x000000000055422a in main (argc=2, argv=0x7fffffffe848) at ../../rts/System/Main.cpp:107
    
    
    (gdb) bt full
    #0  CTeamHandler::AlliedTeams (teamB=4, teamA=16, this=0x16f0eb0) at ../../rts/Sim/Misc/TeamHandler.h:74
    No locals.
    #1  CProjectileDrawer::DrawFlyingPieces (this=this@entry=0x10705700, modelType=modelType@entry=1) at ../../rts/Rendering/ProjectileDrawer.cpp:584
            fp = 0x34cae990
            __for_range = std::vector of length 146, capacity 2048 = {0x34cae990, 0x348bc9b0, 0x348bc800, 0x348bc650, 0x348bc4a0, 0x348bc2f0, 0x348bc140, 0x348bbf90, 0x348bbde0, 
              0x348bbc30, 0x348bba80, 0x348bb8d0, 0x348bb720, 0x348bb570, 0x348bb3c0, 0x348bb210, 0x348bb060, 0x348baeb0, 0x348bad00, 0x32dc4a30, 0x32dc4880, 0x32dc46d0, 
              0x32dc4520, 0x32dc4370, 0x32dc41c0, 0x32dc4010, 0x32dc3e60, 0x32dc3cb0, 0x32dc3b00, 0x32dc3950, 0x32dc37a0, 0x32dc35f0, 0x32dc3440, 0x32dc3290, 0x32dc30e0, 
              0x32dc2f30, 0x32dc2d80, 0x30a80210, 0x30a80060, 0x30a7feb0, 0x30a7fd00, 0x30a7fb50, 0x30a7f9a0, 0x30a7f7f0, 0x30a7f640, 0x30a7f490, 0x30a7f2e0, 0x30a7f130, 
              0x30a7ef80, 0x30a7edd0, 0x30a7ec20, 0x30a7ea70, 0x30a7e8c0, 0x30a7e710, 0x30a7e560, 0x2ee22cb0, 0x2ee22b00, 0x2ee22950, 0x2ee227a0, 0x2ee225f0, 0x2ee22440, 
              0x2ee22290, 0x2ee220e0, 0x2ee21f30, 0x2ee21d80, 0x2ee21bd0, 0x2ee21a20, 0x2ee21870, 0x2ee216c0, 0x2ee21510, 0x2ee21360, 0x2ee211b0, 0x2ee21000, 0x2e7bbc80, 
              0x2e7bbad0, 0x2e7bb920, 0x2e7bb770, 0x2e7bb5c0, 0x2e7bb410, 0x2e7bb260, 0x2e7bb0b0, 0x2e7baf00, 0x2e7bad50, 0x2e7baba0, 0x2e7ba9f0, 0x2e7ba840, 0x2e7ba690, 
              0x2e7ba4e0, 0x2e7ba330, 0x2e7ba180, 0x2e7b9fd0, 0x2d2cfc20, 0x2d2cfa70, 0x2d2cf8c0, 0x2d2cf710, 0x2d2cf560, 0x2d2cf3b0, 0x2d2cf200, 0x2d2cf050, 0x2d2ceea0, 
              0x2d2cecf0, 0x2d2ceb40, 0x2d2ce990, 0x2d2ce7e0, 0x2d2ce630, 0x2d2ce480, 0x2d2ce2d0, 0x2d2ce120, 0x2d2cdf70, 0x2b95a7c0, 0x2b95a610, 0x2b95a460, 0x2b95a2b0, 
              0x2b95a100, 0x2b959f50, 0x2b959da0, 0x2b959bf0, 0x2b959a40, 0x2b959890, 0x2b9596e0, 0x2b959530, 0x2b959380, 0x2b9591d0, 0x2b959020, 0x2b958e70, 0x2b958cc0, 
              0x2b958b10, 0x273fde50, 0x273fdca0, 0x273fdaf0, 0x273fd940, 0x273fd790, 0x273fd5e0, 0x273fd430, 0x273fd280, 0x273fd0d0, 0x273fcf20, 0x273fcd70, 0x273fcbc0, 
              0x273fca10, 0x273fc860, 0x273fc6b0, 0x273fc500, 0x273fc350, 0x273fc1a0, 0x1652b610}
            va = 0x18b7fe0
            lastTex = 18446744073709551615
            lastTeam = 18446744073709551615
            containers = {0xb12af40, 0xb12af58, 0x0, 0x0}
            container = 0xb12af58
    #2  0x0000000000820e89 in CProjectileDrawer::DrawProjectiles (this=this@entry=0x10705700, modelType=modelType@entry=1, drawReflection=drawReflection@entry=false, 
        drawRefraction=drawRefraction@entry=false) at ../../rts/Rendering/ProjectileDrawer.cpp:409
    No locals.
    #3  0x0000000000820f50 in CProjectileDrawer::Draw (this=0x10705700, drawReflection=false, drawRefraction=false) at ../../rts/Rendering/ProjectileDrawer.cpp:618
            modelType = <optimized out>
    #4  0x000000000085d7e0 in CWorldDrawer::Draw (this=<optimized out>) at ../../rts/Rendering/WorldDrawer.cpp:210
            myScopedTimerFromMakro = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 2429, starttime = {static binder = {class_ = 0x17075e0, 
                    base = 0x0, flags = creg::CF_None, memberRegistrator = 0x151d290 <spring_time::memberRegistrator>, name = 0xf22f47 "spring_time", size = 8, alignment = 8, 
                    hasVTable = false, isCregStruct = true, constructor = 0x8aba50 <spring_time::_ConstructInstance(void*)>, 
                    destructor = 0x8aba60 <spring_time::_DestructInstance(void*)>, nextBinder = 0x151d140 <CRectangleOptimizer::binder>}, 
                  static memberRegistrator = 0x151d3d0 <spring_timemreg>, static creg_hasVTable = false, static creg_isStruct = true, x = 147954325000, 
                  static xs = 1442038795769898000}, nameIterator = {first = 2429, second = "WorldDrawer::Projectiles"}}, autoShowGraph = false, it = {first = 2429, second = 1}}
            myScopedTimerFromMakro = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 1783, starttime = {static binder = {class_ = 0x17075e0, 
                    base = 0x0, flags = creg::CF_None, memberRegistrator = 0x151d290 <spring_time::memberRegistrator>, name = 0xf22f47 "spring_time", size = 8, alignment = 8, 
                    hasVTable = false, isCregStruct = true, constructor = 0x8aba50 <spring_time::_ConstructInstance(void*)>, 
                    destructor = 0x8aba60 <spring_time::_DestructInstance(void*)>, nextBinder = 0x151d140 <CRectangleOptimizer::binder>}, 
                  static memberRegistrator = 0x151d3d0 <spring_timemreg>, static creg_hasVTable = false, static creg_isStruct = true, x = 147953292000, 
                  static xs = 1442038795769898000}, nameIterator = {first = 1783, second = "WorldDrawer::Total"}}, autoShowGraph = false, it = {first = 1783, second = 1}}
            gd = 0xccfe9d0
            plane_below = {0, -1, 0, 0}
            plane_above = {0, 1, 0, 0}
    #5  0x00000000005a544a in CGame::Draw (this=0x20b4370) at ../../rts/Game/Game.cpp:1321
            doDrawWorld = true
            currentTimePreDraw = {static binder = {class_ = 0x17075e0, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x151d290 <spring_time::memberRegistrator>, 
                name = 0xf22f47 "spring_time", size = 8, alignment = 8, hasVTable = false, isCregStruct = true, constructor = 0x8aba50 <spring_time::_ConstructInstance(void*)>, 
                destructor = 0x8aba60 <spring_time::_DestructInstance(void*)>, nextBinder = 0x151d140 <CRectangleOptimizer::binder>}, 
              static memberRegistrator = 0x151d3d0 <spring_timemreg>, static creg_hasVTable = false, static creg_isStruct = true, x = 147952830000, 
              static xs = 1442038795769898000}
            myScopedTimerFromMakro = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 1442038943, starttime = {static binder = {
                    class_ = 0x17075e0, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x151d290 <spring_time::memberRegistrator>, name = 0xf22f47 "spring_time", 
                    size = 8, alignment = 8, hasVTable = false, isCregStruct = true, constructor = 0x8aba50 <spring_time::_ConstructInstance(void*)>, 
                    destructor = 0x8aba60 <spring_time::_DestructInstance(void*)>, nextBinder = 0x151d140 <CRectangleOptimizer::binder>}, 
                  static memberRegistrator = 0x151d3d0 <spring_timemreg>, static creg_hasVTable = false, static creg_isStruct = true, x = 714241, 
                  static xs = 1442038795769898000}, nameIterator = <error reading variable>
    #6  0x00000000008cc194 in SpringApp::Update (this=this@entry=0x7fffffffe5a0) at ../../rts/System/SpringApp.cpp:946
            cputimer = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 1972, starttime = {static binder = {class_ = 0x17075e0, base = 0x0, 
                    flags = creg::CF_None, memberRegistrator = 0x151d290 <spring_time::memberRegistrator>, name = 0xf22f47 "spring_time", size = 8, alignment = 8, 
                    hasVTable = false, isCregStruct = true, constructor = 0x8aba50 <spring_time::_ConstructInstance(void*)>, 
                    destructor = 0x8aba60 <spring_time::_DestructInstance(void*)>, nextBinder = 0x151d140 <CRectangleOptimizer::binder>}, 
                  static memberRegistrator = 0x151d3d0 <spring_timemreg>, static creg_hasVTable = false, static creg_isStruct = true, x = 147948729000, 
                  static xs = 1442038795769898000}, nameIterator = {first = 1972, second = "GameController::Draw"}}, autoShowGraph = false, it = {first = 1972, second = 1}}
            ret = <optimized out>
            cputimer = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 1972, starttime = {static binder = {class_ = 0x17075e0, base = 0x0, 
                    flags = creg::CF_None, memberRegistrator = 0x151d290 <spring_time::memberRegistrator>, name = 0xf22f47 "spring_time", size = 8, alignment = 8, 
                    hasVTable = false, isCregStruct = true, constructor = 0x8aba50 <spring_time::_ConstructInstance(void*)>, 
                    destructor = 0x8aba60 <spring_time::_DestructInstance(void*)>, nextBinder = 0x151d140 <CRectangleOptimizer::binder>}, 
                  static memberRegistrator = 0x151d3d0 <spring_timemreg>, static creg_hasVTable = false, static creg_isStruct = true, x = 147948729000, 
                  static xs = 1442038795769898000}, nameIterator = {first = 1972, second = "GameController::Draw"}}, autoShowGraph = false, it = {first = 1972, second = 1}}
    #7  0x00000000008d37d8 in SpringApp::Run (this=this@entry=0x7fffffffe5a0) at ../../rts/System/SpringApp.cpp:978
            __FUNCTION__ = "Run"
    #8  0x00000000008a819e in Run (argc=argc@entry=2, argv=argv@entry=0x7fffffffe848) at ../../rts/System/Main.cpp:48
            app = {cmdline = {px = 0x16edbe0, pn = {pi_ = 0x16edf40}}, clientSetup = {px = 0x1bfb130, pn = {pi_ = 0x1b9f410}}}
            ret = -1
            err = <optimized out>
    #9  0x000000000055422a in main (argc=2, argv=0x7fffffffe848) at ../../rts/System/Main.cpp:107
    No locals.
    
    txt file icon bt_and_bt_full.txt (10,340 bytes) 2015-09-12 08:39 +

-Relationships
+Relationships

-Notes

~0015154

cleanrock (developer)

I tried the demo and i got a crash earlier than what is seen in infolog, last print was:
[f=0009312] <[I]burp> Allies: this mode needs more players

Attached bt and bt full.

~0015155

cleanrock (developer)

CTeamHandler::AllyTeam() is out of bounds (CTeamHandler::teams is smaller).
The crash do not happen every time when watching the demo and crash happen at different times.

~0015156

malric (reporter)

I also watched the demo and it did not crash for me when watching it (tried only once though).

~0015602

Anonymous (viewer)

Fix bbb0310ca9193714cb40fa84ac0421efc0af92e2 committed to develop branch: fix 0004951, repo: spring changeset id: 6514
+Notes

+Related Changesets

-Issue History
Date Modified Username Field Change
2015-09-11 20:52 malric New Issue
2015-09-11 20:52 malric File Added: spring_crash.tar.gz
2015-09-12 08:39 cleanrock Note Added: 0015154
2015-09-12 08:39 cleanrock File Added: bt_and_bt_full.txt
2015-09-12 11:01 cleanrock Note Added: 0015155
2015-09-12 15:51 malric Note Added: 0015156
2016-02-02 13:14 Changeset attached => spring develop bbb0310c
2016-02-02 13:14 Anonymous Note Added: 0015602
2016-02-02 13:14 Anonymous Status new => resolved
2016-02-02 13:14 Anonymous Resolution open => fixed
+Issue History