View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
---|---|---|---|---|---|---|---|---|---|
0005088 | Spring engine | General | public | 2016-02-13 07:29 | 2016-02-26 14:55 | ||||
Reporter | abma | ||||||||
Assigned To | hokomoko | ||||||||
Priority | normal | Severity | crash | Reproducibility | have not tried | ||||
Status | resolved | Resolution | fixed | ||||||
Product Version | 100.0+git | ||||||||
Target Version | 101.0 | Fixed in Version | |||||||
Summary | 0005088: endless loop in CGround::LineGroundCol | ||||||||
Description | happened after /cheat /give all /give all 1 | ||||||||
Additional Information | (gdb) bt full #0 0x000000000067cd65 in LineGroundSquareCol (ys=0, xs=669, to=..., from=..., normalmap=0x7fb471401010, heightmap=0x311ef80) at rts/Map/Ground.cpp:94 cornerVertex = {static binder = {class_ = 0x22299e0, base = 0x0, flags = creg::CF_None, memberRegistrator = 0xde0610 <float3::memberRegistrator>, name = 0xbde3db "float3", size = 12, alignment = 4, hasVTable = false, isCregStruct = true, constructor = 0x8534e0 <float3::_ConstructInstance(void*)>, destructor = 0x853500 <float3::_DestructInstance(void*)>, nextBinder = 0xde0420 <itype2<unsigned short>::binder>}, static memberRegistrator = 0xde0620 <float3mreg>, static creg_hasVTable = false, static creg_isStruct = true, static CMP_EPS = 9,99999975e-05, static NORMALIZE_EPS = 9,99999996e-13, static maxxpos = 10239, static maxzpos = 5119, {{x = 5352, y = 182,177734, z = 0}, {r = 5352, g = 182,177734, b = 0}, {x1 = 5352, y1 = 182,177734, x2 = 0}, {s = 5352, t = 182,177734, p = 0}, { xstart = 5352, ystart = 182,177734, xend = 0}, {xyz = {5352, 182,177734, 0}}}} faceNormalTL = <optimized out> ys = 0 from = @0x7ffe8ade0b20: {static binder = {class_ = 0x22299e0, base = 0x0, flags = creg::CF_None, memberRegistrator = 0xde0610 <float3::memberRegistrator>, name = 0xbde3db "float3", size = 12, alignment = 4, hasVTable = false, isCregStruct = true, constructor = 0x8534e0 <float3::_ConstructInstance(void*)>, destructor = 0x853500 <float3::_DestructInstance(void*)>, nextBinder = 0xde0420 <itype2<unsigned short>::binder>}, static memberRegistrator = 0xde0620 <float3mreg>, static creg_hasVTable = false, static creg_isStruct = true, static CMP_EPS = 9,99999975e-05, static NORMALIZE_EPS = 9,99999996e-13, static maxxpos = 10239, static maxzpos = 5119, {{x = 5359,5, y = 103,084106, z = 4521,604}, {r = 5359,5, g = 103,084106, b = 4521,604}, {x1 = 5359,5, y1 = 103,084106, x2 = 4521,604}, {s = 5359,5, t = 103,084106, p = 4521,604}, {xstart = 5359,5, ystart = 103,084106, xend = 4521,604}, {xyz = {5359,5, 103,084106, 4521,604}}}} normalmap = 0x7fb471401010 heightmap = 0x311ef80 xs = 669 to = @0x7ffe8ade0b10: {static binder = {class_ = 0x22299e0, base = 0x0, flags = creg::CF_None, memberRegistrator = 0xde0610 <float3::memberRegistrator>, name = 0xbde3db "float3", size = 12, alignment = 4, hasVTable = false, isCregStruct = true, constructor = 0x8534e0 <float3::_ConstructInstance(void*)>, destructor = 0x853500 <float3::_DestructInstance(void*)>, nextBinder = 0xde0420 <itype2<unsigned short>::binder>}, static memberRegistrator = 0xde0620 <float3mreg>, static creg_hasVTable = false, static creg_isStruct = true, static CMP_EPS = 9,99999975e-05, static NORMALIZE_EPS = 9,99999996e-13, static maxxpos = 10239, static maxzpos = 5119, {{x = -nan(0x7fe8d6), y = -nan(0x7fe8d6), z = -nan(0x7fe8d6)}, {r = -nan(0x7fe8d6), g = -nan(0x7fe8d6), b = -nan(0x7fe8d6)}, {x1 = -nan(0x7fe8d6), y1 = -nan(0x7fe8d6), x2 = -nan(0x7fe8d6)}, {s = -nan(0x7fe8d6), t = -nan(0x7fe8d6), p = -nan(0x7fe8d6)}, {xstart = -nan(0x7fe8d6), ystart = -nan(0x7fe8d6), xend = -nan(0x7fe8d6)}, {xyz = {-nan(0x7fe8d6), -nan(0x7fe8d6), -nan(0x7fe8d6)}}}} inMap = true #1 CGround::LineGroundCol (from=..., to=..., synced=synced@entry=true) at rts/Map/Ground.cpp:327 nextx = <optimized out> nextz = <optimized out> xn = <optimized out> zn = <optimized out> endReached = <optimized out> beyondEnd = <optimized out> testposx = 1 testposz = 1 curx = 669 curz = 0 rdsx = -nan(0x7fe8d6) rdsz = -nan(0x7fe8d6) pfrom = <optimized out> skippedDist = 0 dx = -nan(0x7fe8d6) dz = -nan(0x7fe8d6) dirx = -1 dirz = -1 fsx = 669 fsz = 565 tsx = 0 tsz = 0 keepgoing = true #2 0x00000000004f7c12 in TraceRay::TraceRay (start=..., dir=..., length=length@entry=-nan(0x7fe8d6), avoidFlags=avoidFlags@entry=-17, owner=0x1b88a760, hitUnit=@0x7ffe8ade0d40: 0x0, hitFeature=@0x7ffe8ade0d48: 0x0, hitColQuery=<optimized out>) at rts/Game/TraceRay.cpp:267 groundLength = <optimized out> ignoreEnemies = 239 ignoreAllies = true ignoreFeatures = true ignoreNeutrals = true ---Type <return> to continue, or q <return> to quit--- ignoreGround = false ignoreCloaked = true ignoreUnits = <optimized out> 0000003 0x0000000000b5c770 in CWeapon::HaveFreeLineOfFire (this=0x1b8859c0, pos=..., trg=...) at rts/Sim/Weapons/Weapon.cpp:974 unit = 0x0 feature = 0x0 gdst = <optimized out> gpos = <optimized out> dir = {static binder = {class_ = 0x22299e0, base = 0x0, flags = creg::CF_None, memberRegistrator = 0xde0610 <float3::memberRegistrator>, name = 0xbde3db "float3", size = 12, alignment = 4, hasVTable = false, isCregStruct = true, constructor = 0x8534e0 <float3::_ConstructInstance(void*)>, destructor = 0x853500 <float3::_DestructInstance(void*)>, nextBinder = 0xde0420 <itype2<unsigned short>::binder>}, static memberRegistrator = 0xde0620 <float3mreg>, static creg_hasVTable = false, static creg_isStruct = true, static CMP_EPS = 9,99999975e-05, static NORMALIZE_EPS = 9,99999996e-13, static maxxpos = 10239, static maxzpos = 5119, {{x = -nan(0x7fe8d6), y = -nan(0x7fe8d6), z = -nan(0x7fe8d6)}, {r = -nan(0x7fe8d6), g = -nan(0x7fe8d6), b = -nan(0x7fe8d6)}, {x1 = -nan(0x7fe8d6), y1 = -nan(0x7fe8d6), x2 = -nan(0x7fe8d6)}, {s = -nan(0x7fe8d6), t = -nan(0x7fe8d6), p = -nan(0x7fe8d6)}, {xstart = -nan(0x7fe8d6), ystart = -nan(0x7fe8d6), xend = -nan(0x7fe8d6)}, {xyz = {-nan(0x7fe8d6), -nan(0x7fe8d6), -nan(0x7fe8d6)}}}} length = -nan(0x7fe8d6) spread = <optimized out> 0000004 0x0000000000b6020b in CWeapon::TryTarget (this=this@entry=0x1b8859c0, trg=...) at rts/Sim/Weapons/Weapon.cpp:992 No locals. 0000005 0x0000000000b60cca in CWeapon::Attack (this=0x1b8859c0, newTarget=...) at rts/Sim/Weapons/Weapon.cpp:541 newTarget = @0x1b88aca8: {static binder = {class_ = 0x2227ac0, base = 0x0, flags = creg::CF_None, memberRegistrator = 0xe01690 <SWeaponTarget::memberRegistrator>, name = 0xbc8a4e "SWeaponTarget", size = 40, alignment = 8, hasVTable = false, isCregStruct = true, constructor = 0xb72190 <SWeaponTarget::_ConstructInstance(void*)>, destructor = 0xb721d0 <SWeaponTarget::_DestructInstance(void*)>, nextBinder = 0xe014c0 <CWeapon::binder>}, static memberRegistrator = 0xe016a0 <SWeaponTargetmreg>, static creg_hasVTable = false, static creg_isStruct = true, type = Target_Unit, isUserTarget = false, isManualFire = false, unit = 0x23c41e80, intercept = 0x0, groundPos = { static binder = {class_ = 0x22299e0, base = 0x0, flags = creg::CF_None, memberRegistrator = 0xde0610 <float3::memberRegistrator>, name = 0xbde3db "float3", size = 12, alignment = 4, hasVTable = false, isCregStruct = true, constructor = 0x8534e0 <float3::_ConstructInstance(void*)>, destructor = 0x853500 <float3::_DestructInstance(void*)>, nextBinder = 0xde0420 <itype2<unsigned short>::binder>}, static memberRegistrator = 0xde0620 <float3mreg>, static creg_hasVTable = false, static creg_isStruct = true, static CMP_EPS = 9,99999975e-05, static NORMALIZE_EPS = 9,99999996e-13, static maxxpos = 10239, static maxzpos = 5119, {{x = 0, y = 0, z = 0}, {r = 0, g = 0, b = 0}, {x1 = 0, y1 = 0, x2 = 0}, {s = 0, t = 0, p = 0}, {xstart = 0, ystart = 0, xend = 0}, {xyz = {0, 0, 0}}}}} this = 0x1b8859c0 #6 0x0000000000b2466f in CUnit::AttackUnit (this=0x1b88a760, targetUnit=targetUnit@entry=0x23c41e80, isUserTarget=<optimized out>, wantManualFire=<optimized out>, fpsMode=fpsMode@entry=false) at rts/Sim/Units/Unit.cpp:1723 w = <optimized out> __for_range = std::vector of length 1, capacity 1 = {0x1b8859c0} newTarget = {static binder = {class_ = 0x2227ac0, base = 0x0, flags = creg::CF_None, memberRegistrator = 0xe01690 <SWeaponTarget::memberRegistrator>, name = 0xbc8a4e "SWeaponTarget", size = 40, alignment = 8, hasVTable = false, isCregStruct = true, constructor = 0xb72190 <SWeaponTarget::_ConstructInstance(void*)>, destructor = 0xb721d0 <SWeaponTarget::_DestructInstance(void*)>, nextBinder = 0xe014c0 <CWeapon::binder>}, static memberRegistrator = 0xe016a0 <SWeaponTargetmreg>, static creg_hasVTable = false, static creg_isStruct = true, type = Target_Unit, isUserTarget = false, isManualFire = false, unit = 0x23c41e80, intercept = 0x0, groundPos = { static binder = {class_ = 0x22299e0, base = 0x0, flags = creg::CF_None, memberRegistrator = 0xde0610 <float3::memberRegistrator>, name = 0xbde3db "float3", size = 12, alignment = 4, hasVTable = false, isCregStruct = true, constructor = 0x8534e0 <float3::_ConstructInstance(void*)>, destructor = 0x853500 <float3::_DestructInstance(void*)>, nextBinder = 0xde0420 <itype2<unsigned short>::binder>}, static memberRegistrator = 0xde0620 <float3mreg>, static creg_hasVTable = false, static creg_isStruct = true, static CMP_EPS = 9,99999975e-05, static NORMALIZE_EPS = 9,99999996e-13, static maxxpos = 10239, static maxzpos = 5119, {{x = 0, y = 0, z = 0}, {r = 0, g = 0, b = 0}, {x1 = 0, y1 = 0, x2 = 0}, {s = 0, t = 0, p = 0}, {xstart = 0, ystart = 0, xend = 0}, {xyz = {0, 0, 0}}}}} ret = false #7 0x0000000000b03d2a in CMobileCAI::ExecuteAttack (this=0x1b884bf0, c=...) at rts/Sim/Units/CommandAI/MobileCAI.cpp:700 tgtErrPos = {static binder = {class_ = 0x22299e0, base = 0x0, flags = creg::CF_None, memberRegistrator = 0xde0610 <float3::memberRegistrator>, name = 0xbde3db "float3", size = 12, alignment = 4, hasVTable = false, isCregStruct = true, constructor = 0x8534e0 <float3::_ConstructInstance(void*)>, destructor = 0x853500 <float3::_DestructInstance(void*)>, nextBinder = 0xde0420 <itype2<unsigned short>::binder>}, static memberRegistrator = 0xde0620 <float3mreg>, static creg_hasVTable = false, static creg_isStruct = true, static CMP_EPS = 9,99999975e-05, static NORMALIZE_EPS = 9,99999996e-13, static maxxpos = 10239, static maxzpos = 5119, {{x = <optimized out>, y = 3,70962524, z = 3675,55933}, {r = <optimized out>, g = 3,70962524, b = 3675,55933}, {x1 = <optimized out>, y1 = 3,70962524, x2 = 3675,55933}, {s = <optimized out>, t = 3,70962524, p = 3675,55933}, {xstart = <optimized out>, ystart = 3,70962524, xend = 3675,55933}, {xyz = {<optimized out>, 3,70962524, 3675,55933}}}} tgtPosDir = <optimized out> radius = <optimized out> #8 0x0000000000b277c5 in CUnit::SlowUpdate (this=0x1b88a760) at rts/Sim/Units/Unit.cpp:1106 ---Type <return> to continue, or q <return> to quit--- No locals. #9 0x0000000000b42790 in CUnitHandler::Update (this=0x4d0fde0) at rts/Sim/Units/UnitHandler.cpp:266 unit = 0x1b88a760 myScopedTimerFromMakro = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 1580, starttime = {static binder = {class_ = 0x22283c0, base = 0x0, flags = creg::CF_None, memberRegistrator = 0xddd110 <spring_time::memberRegistrator>, name = 0xbd5e72 "spring_time", size = 8, alignment = 8, hasVTable = false, isCregStruct = true, constructor = 0x811fd0 <spring_time::_ConstructInstance(void*)>, destructor = 0x811fe0 <spring_time::_DestructInstance(void*)>, nextBinder = 0xddd020 <CRectangleOptimizer::binder>}, static memberRegistrator = 0xddd190 <spring_timemreg>, static creg_hasVTable = false, static creg_isStruct = true, x = 3025262157834, static xs = 1455341650254929027}, nameIterator = {first = 1580, second = "Unit::SlowUpdate"}}, autoShowGraph = false, it = {first = 1580, second = 1}} n = 12 0000010 0x00000000004af609 in CGame::SimFrame (this=this@entry=0x27e36b0) at rts/Game/Game.cpp:1468 myScopedTimerFromMakro = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 796, starttime = {static binder = {class_ = 0x22283c0, base = 0x0, flags = creg::CF_None, memberRegistrator = 0xddd110 <spring_time::memberRegistrator>, name = 0xbd5e72 "spring_time", size = 8, alignment = 8, hasVTable = false, isCregStruct = true, constructor = 0x811fd0 <spring_time::_ConstructInstance(void*)>, destructor = 0x811fe0 <spring_time::_DestructInstance(void*)>, nextBinder = 0xddd020 <CRectangleOptimizer::binder>}, static memberRegistrator = 0xddd190 <spring_timemreg>, static creg_hasVTable = false, static creg_isStruct = true, x = 3025256501508, static xs = 1455341650254929027}, nameIterator = {first = 796, second = "SimFrame"}}, autoShowGraph = false, it = { first = 796, second = 1}} #11 0x00000000005a3bea in CGame::ClientReadNet (this=this@entry=0x27e36b0) at rts/Net/NetCommands.cpp:507 packet = {px = 0x7fb481793e90, pn = {pi_ = 0x7fb481793ed0}} inbuf = <optimized out> dataLength = 1 packetCode = 2 '\002' msgProcEndTime = <optimized out> __FUNCTION__ = "ClientReadNet" 0000012 0x00000000004b71b9 in CGame::Update (this=0x27e36b0) at rts/Game/Game.cpp:960 No locals. 0000013 0x0000000000834718 in SpringApp::Update (this=this@entry=0x7ffe8ade1bc0) at rts/System/SpringApp.cpp:973 ret = 1 cputimer = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 1455344675, starttime = {static binder = {class_ = 0x22283c0, base = 0x0, flags = creg::CF_None, memberRegistrator = 0xddd110 <spring_time::memberRegistrator>, name = 0xbd5e72 "spring_time", size = 8, alignment = 8, hasVTable = false, isCregStruct = true, constructor = 0x811fd0 <spring_time::_ConstructInstance(void*)>, destructor = 0x811fe0 <spring_time::_DestructInstance(void*)>, nextBinder = 0xddd020 <CRectangleOptimizer::binder>}, static memberRegistrator = 0xddd190 <spring_timemreg>, static creg_hasVTable = false, static creg_isStruct = true, x = 484976034, static xs = 1455341650254929027}, nameIterator = {first = 1139, second = "SwapBuffers"}}, autoShowGraph = false, it = { first = 1139, second = 0}} 0000014 0x000000000083a0f8 in SpringApp::Run (this=this@entry=0x7ffe8ade1bc0) at rts/System/SpringApp.cpp:1009 __FUNCTION__ = "Run" #15 0x000000000080ddc4 in Run (argc=argc@entry=1, argv=argv@entry=0x7ffe8ade1f18) at rts/System/Main.cpp:48 app = {cmdline = {px = 0x22186c0, pn = {pi_ = 0x2207c40}}, clientSetup = {px = 0x22b07e0, pn = {pi_ = 0x24f9970}}} ret = -1 err = <optimized out> #16 0x0000000000468c04 in main (argc=1, argv=0x7ffe8ade1f18) at rts/System/Main.cpp:107 | ||||||||
Tags | No tags attached. | ||||||||
Checked infolog.txt for Errors | |||||||||
Attached Files |
|
![]() |
|||||||||||
|
![]() |
|
abma (administrator) 2016-02-13 07:39 Last edited: 2016-02-13 07:40 |
spring 100.0.1-1157-g3c601b1 sorry, no demo, was at frame >100k was a release build -> possible an assert would fail in a debug build |
Kloot (developer) 2016-02-13 12:28 Last edited: 2016-02-13 12:32 |
these probably have something to do with it: rdsx = -nan(0x7fe8d6) rdsz = -nan(0x7fe8d6) CWeapon::HaveFreeLineOfFire (this=0x1b8859c0, pos=..., trg=...) at rts/Sim/Weapons/Weapon.cpp:974 unit = 0x0 feature = 0x0 gdst = <optimized out> gpos = <optimized out> dir = {... {{x = -nan(0x7fe8d6), y = -nan(0x7fe8d6), z = -nan(0x7fe8d6)}, ...} length = -nan(0x7fe8d6) |
hokomoko (developer) 2016-02-13 13:03 |
length comes from the length of the vector here: https://github.com/spring/spring/blob/develop/rts/Sim/Weapons/Weapon.cpp#L958 so if we're going back either pos or aimFromPos were nan? which game was it? |
abma (administrator) 2016-02-13 14:18 |
Balanced Annihilation V9.31 |
hokomoko (developer) 2016-02-13 14:31 |
AFAIK it isn't working with current engine (didn't update lua code) so that may be a reason. |
abma (administrator) 2016-02-24 01:53 |
other report has a replay, closing this one |
hokomoko (developer) 2016-02-26 14:55 |
Fix 8e997c3520784016c8a9a24434b60e847020b1a3 committed to develop branch: Fix 0005105 0005088, repo: spring changeset id: 6677 |
![]() |
|||
Date Modified | Username | Field | Change |
---|---|---|---|
2016-02-13 07:29 | abma | New Issue | |
2016-02-13 07:39 | abma | Note Added: 0015756 | |
2016-02-13 07:40 | abma | Note Edited: 0015756 | View Revisions |
2016-02-13 12:28 | Kloot | Note Added: 0015759 | |
2016-02-13 12:32 | Kloot | Note Edited: 0015759 | View Revisions |
2016-02-13 13:03 | hokomoko | Note Added: 0015760 | |
2016-02-13 14:18 | abma | Note Added: 0015761 | |
2016-02-13 14:31 | hokomoko | Note Added: 0015762 | |
2016-02-17 01:31 | abma | Relationship added | related to 0005095 |
2016-02-23 17:29 | Kloot | Relationship added | duplicate of 0005105 |
2016-02-24 01:53 | abma | Note Added: 0015875 | |
2016-02-24 01:53 | abma | Status | new => closed |
2016-02-24 01:53 | abma | Assigned To | => abma |
2016-02-24 01:53 | abma | Resolution | open => duplicate |
2016-02-26 14:55 | hokomoko | Changeset attached | => spring develop 8e997c35 |
2016-02-26 14:55 | hokomoko | Note Added: 0015900 | |
2016-02-26 14:55 | hokomoko | Assigned To | abma => hokomoko |
2016-02-26 14:55 | hokomoko | Status | closed => resolved |
2016-02-26 14:55 | hokomoko | Resolution | duplicate => fixed |