View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
---|---|---|---|---|---|---|---|---|---|
0004891 | Spring engine | General | public | 2015-07-07 13:56 | 2015-07-07 14:26 | ||||
Reporter | cleanrock | ||||||||
Assigned To | hokomoko | ||||||||
Priority | normal | Severity | crash | Reproducibility | have not tried | ||||
Status | resolved | Resolution | fixed | ||||||
Product Version | |||||||||
Target Version | Fixed in Version | ||||||||
Summary | 0004891: SIGFPE in CGameHelper::GenerateWeaponTargets | ||||||||
Description | Program received signal SIGFPE, Arithmetic exception. 0x00000000005da501 in CGameHelper::GenerateWeaponTargets (weapon=0x7fffc516b800, avoidUnit=0x0, targets=std::multimap with 0 elements) at /home/johanr/my_projects/spring/rts/Game/GameHelper.cpp:645 645 const float secDamage = weaponDef->damages.GetDefaultDamage() * weapon->salvoSize / weapon->reloadTime * GAME_SPEED; (gdb) bt #0 0x00000000005da501 in CGameHelper::GenerateWeaponTargets (weapon=0x7fffc516b800, avoidUnit=0x0, targets=std::multimap with 0 elements) at /home/johanr/my_projects/spring/rts/Game/GameHelper.cpp:645 #1 0x0000000000ec0934 in CWeapon::AutoTarget (this=0x7fffc516b800) at /home/johanr/my_projects/spring/rts/Sim/Weapons/Weapon.cpp:651 #2 0x0000000000ec0cf4 in CWeapon::SlowUpdate (this=0x7fffc516b800) at /home/johanr/my_projects/spring/rts/Sim/Weapons/Weapon.cpp:723 0000003 0x0000000000e77406 in CUnit::SlowUpdateWeapons (this=0x3659f000) at /home/johanr/my_projects/spring/rts/Sim/Units/Unit.cpp:1089 0000004 0x0000000000e96c58 in CUnitHandler::Update (this=0x1423a000) at /home/johanr/my_projects/spring/rts/Sim/Units/UnitHandler.cpp:272 0000005 0x00000000005ca30e in CGame::SimFrame (this=0x263ac00) at /home/johanr/my_projects/spring/rts/Game/Game.cpp:1578 | ||||||||
Steps To Reproduce | /give all /give all 1 /give all | ||||||||
Additional Information | 99.0.1-80-g8b50289 zk 1.3.7.2 | ||||||||
Tags | No tags attached. | ||||||||
Checked infolog.txt for Errors | |||||||||
Attached Files |
|
![]() |
|
cleanrock (reporter) 2015-07-07 14:04 |
Second run: Program received signal SIGFPE, Arithmetic exception. 0x00000000005da501 in CGameHelper::GenerateWeaponTargets (weapon=0x399afc00, avoidUnit=0x0, targets=std::multimap with 0 elements) at /home/johanr/my_projects/spring/rts/Game/GameHelper.cpp:645 645 const float secDamage = weaponDef->damages.GetDefaultDamage() * weapon->salvoSize / weapon->reloadTime * GAME_SPEED; (gdb) bt #0 0x00000000005da501 in CGameHelper::GenerateWeaponTargets (weapon=0x399afc00, avoidUnit=0x0, targets=std::multimap with 0 elements) at /home/johanr/my_projects/spring/rts/Game/GameHelper.cpp:645 #1 0x0000000000ec0934 in CWeapon::AutoTarget (this=0x399afc00) at /home/johanr/my_projects/spring/rts/Sim/Weapons/Weapon.cpp:651 #2 0x0000000000ec0cf4 in CWeapon::SlowUpdate (this=0x399afc00) at /home/johanr/my_projects/spring/rts/Sim/Weapons/Weapon.cpp:723 0000003 0x0000000000e77406 in CUnit::SlowUpdateWeapons (this=0x7fffcec96000) at /home/johanr/my_projects/spring/rts/Sim/Units/Unit.cpp:1089 0000004 0x0000000000e96c58 in CUnitHandler::Update (this=0x142e2a00) at /home/johanr/my_projects/spring/rts/Sim/Units/UnitHandler.cpp:272 0000005 0x00000000005ca30e in CGame::SimFrame (this=0x1d59200) at /home/johanr/my_projects/spring/rts/Game/Game.cpp:1578 #6 0x000000000071b0cf in CGame::ClientReadNet (this=0x1d59200) at /home/johanr/my_projects/spring/rts/Net/NetCommands.cpp:505 |
cleanrock (reporter) 2015-07-07 14:16 |
bt full from second run: (gdb) bt full #0 0x00000000005da501 in CGameHelper::GenerateWeaponTargets (weapon=0x399afc00, avoidUnit=0x0, targets=std::multimap with 0 elements) at /home/johanr/my_projects/spring/rts/Game/GameHelper.cpp:645 owner = 0x7fffcec96000 radius = 9000 pos = @0x7fffcec961fc: {static binder = {class_ = 0x1c81780, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x13756a8 <float3::memberRegistrator>, name = 0xfa013d "float3", size = 12, alignment = 4, hasVTable = false, isCregStruct = true, constructor = 0xa8e196 <float3::_ConstructInstance(void*)>, destructor = 0xa8e1c4 <float3::_DestructInstance(void*)>, nextBinder = 0x1375620 <itype2<unsigned short>::binder>}, static memberRegistrator = 0x13757a0 <float3mreg>, static creg_hasVTable = false, static creg_isStruct = true, static CMP_EPS = 9.99999975e-05, static NORMALIZE_EPS = 9.99999996e-13, static maxxpos = 8191, static maxzpos = 8191, {{x = 3320, y = 5.59063911, z = 3929}, {r = 3320, g = 5.59063911, b = 3929}, { x1 = 3320, y1 = 5.59063911, x2 = 3929}, {s = 3320, t = 5.59063911, p = 3929}, {xstart = 3320, ystart = 5.59063911, xend = 3929}}} aHeight = 373.090637 lastAttacker = 0x0 weaponDef = 0x119e6378 heightMod = 1 secDamage = -nan(0x7fd450) paralyzer = false quads = std::vector of length 1220091659941516321, capacity 35184165673087 = {<error reading variable quads (Cannot access memory at address 0x0)> tempNum = 32767 #1 0x0000000000ec0934 in CWeapon::AutoTarget (this=0x399afc00) at /home/johanr/my_projects/spring/rts/Sim/Weapons/Weapon.cpp:651 avoidUnit = 0x0 targets = std::multimap with 0 elements goodTargetUnit = 0xec0d14 <CWeapon::HoldIfTargetInvalid()+24> badTargetUnit = 0x7fffffffd570 #2 0x0000000000ec0cf4 in CWeapon::SlowUpdate (this=0x399afc00) at /home/johanr/my_projects/spring/rts/Sim/Weapons/Weapon.cpp:723 No locals. 0000003 0x0000000000e77406 in CUnit::SlowUpdateWeapons (this=0x7fffcec96000) at /home/johanr/my_projects/spring/rts/Sim/Units/Unit.cpp:1089 w = 0x399afc00 __for_range = std::vector of length 6, capacity 6 = {0x399b1000, 0x399af400, 0x399af800, 0x399afc00, 0x399aec00, 0x399af000} __for_begin = __for_end = 0000004 0x0000000000e96c58 in CUnitHandler::Update (this=0x142e2a00) at /home/johanr/my_projects/spring/rts/Sim/Units/UnitHandler.cpp:272 unit = 0x7fffcec96000 myScopedTimerFromMakro = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 1580, starttime = {static binder = {class_ = 0x1c81c00, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x1371c88 <spring_time::memberRegistrator>, name = 0xf8b959 "spring_time", size = 8, alignment = 8, hasVTable = false, isCregStruct = true, constructor = 0xa30738 <spring_time::_ConstructInstance(void*)>, destructor = 0xa30766 <spring_time::_DestructInstance(void*)>, nextBinder = 0x1371b80 <CRectangleOptimizer::binder>}, static memberRegistrator = 0x1371db8 <spring_timemreg>, static creg_hasVTable = false, static creg_isStruct = true, x = 37640383625, static xs = 1436270443149761228}, nameIterator = {first = 1580, second = "Unit::SlowUpdate"}}, autoShowGraph = false, it = {first = 1580, second = 1}} n = 1 UNIT_SANITY_CHECK = {<No data fields>} 0000005 0x00000000005ca30e in CGame::SimFrame (this=0x1d59200) at /home/johanr/my_projects/spring/rts/Game/Game.cpp:1578 myScopedTimerFromMakro = {<BasicTimer> = {<boost::noncopyable_::noncopyable> = {<No data fields>}, hash = 796, starttime = {static binder = {class_ = 0x1c81c00, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x1371c88 <spring_time::memberRegistrator>, name = 0xf8b959 "spring_time", size = 8, alignment = 8, hasVTable = false, isCregStruct = true, constructor = 0xa30738 <spring_time::_ConstructInstance(void*)>, destructor = 0xa30766 <spring_time::_DestructInstance(void*)>, nextBinder = 0x1371b80 <CRectangleOptimizer::binder>}, static memberRegistrator = 0x1371db8 <spring_timemreg>, static creg_hasVTable = false, static creg_isStruct = true, x = 37627650281, static xs = 1436270443149761228}, nameIterator = {first = 796, second = "SimFrame"}}, autoShowGraph = false, it = {first = 796, second = 1}} #6 0x000000000071b0cf in CGame::ClientReadNet (this=0x1d59200) at /home/johanr/my_projects/spring/rts/Net/NetCommands.cpp:505 packet = {px = 0x7fffc9efac80, pn = {pi_ = 0x7fffcde9b300}} inbuf = 0x7fffd4977928 "\002x\227\324\377\177" dataLength = 1 packetCode = 2 '\002' msgProcEndTime = {static binder = {class_ = 0x1c81c00, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x1371c88 <spring_time::memberRegistrator>, name = 0xf8b959 "spring_time", size = 8, alignment = 8, hasVTable = false, isCregStruct = true, constructor = 0xa30738 <spring_time::_ConstructInstance(void*)>, destructor = 0xa30766 <spring_time::_DestructInstance(void*)>, nextBinder = 0x1371b80 <CRectangleOptimizer::binder>}, static memberRegistrator = 0x1371db8 <spring_timemreg>, static creg_hasVTable = false, static creg_isStruct = true, x = 37656766596, static xs = 1436270443149761228} __FUNCTION__ = "ClientReadNet" __PRETTY_FUNCTION__ = "void CGame::ClientReadNet()" |
cleanrock (reporter) 2015-07-07 14:25 |
(gdb) p *weaponDef $2 = {static binder = {class_ = 0x1d46e80, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x139eca8 <WeaponDef::memberRegistrator>, name = 0x102df2e "WeaponDef", size = 776, alignment = 8, hasVTable = false, isCregStruct = true, constructor = 0xec6676 <WeaponDef::_ConstructInstance(void*)>, destructor = 0xec66d0 <WeaponDef::_DestructInstance(void*)>, nextBinder = 0x139eb40 <CWeapon::binder>}, static memberRegistrator = 0x0, static creg_hasVTable = false, static creg_isStruct = true, name = "mahlazer_cutter", type = "BeamLaser", description = "Groovecutter", ptrailExplosionGeneratorID = 4294967295, impactExplosionGeneratorID = 258, bounceExplosionGeneratorID = 4294967295, fireSound = {sounds = std::vector of length 1, capacity 1 = {{name = "weapon/laser/laser_burn6", id = 135, volume = 1}}}, hitSound = {sounds = std::vector of length 2, capacity 2 = {{name = "", id = -1, volume = 18.9736652}, {name = "", id = -1, volume = 18.9736652}}}, range = 9000, heightmod = 1, accuracy = 0, sprayAngle = 0, movingAccuracy = 0, ownerExpAccWeight = 0, targetMoveError = 0, leadLimit = -1, leadBonus = 0, predictBoost = 0, damages = {static binder = {class_ = 0x1c80e00, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x138d948 <DamageArray::memberRegistrator>, name = 0xfeec1d "DamageArray", size = 48, alignment = 8, hasVTable = false, isCregStruct = true, constructor = 0xcf60e8 <DamageArray::_ConstructInstance(void*)>, destructor = 0xcf614a <DamageArray::_DestructInstance(void*)>, nextBinder = 0x138d800 <CollisionVolume::binder>}, static memberRegistrator = 0x138d9b0 <DamageArraymreg>, static creg_hasVTable = false, static creg_isStruct = true, paralyzeDamageTime = 0, impulseFactor = 0, impulseBoost = 0, craterMult = 4, craterBoost = 2, damages = std::vector of length 5, capacity 5 = {180, 180, 180, 180, 180}}, craterAreaOfEffect = 42, damageAreaOfEffect = 28, noSelfDamage = true, fireStarter = 0, edgeEffectiveness = 0, size = 2.45000005, sizeGrowth = 0.5, collisionSize = 0.0500000007, salvosize = 1, salvodelay = 0.100000001, reload = 0.0299999993, beamtime = 0.00100000005, beamburst = false, waterBounce = false, groundBounce = false, bounceRebound = 1, bounceSlip = 1, numBounce = -1, maxAngle = 0.958738029, maxFireAngle = -1, uptime = 0, flighttime = 0, metalcost = 0, energycost = 0, projectilespershot = 1, id = 719, tdfId = 0, turret = true, onlyForward = false, allowNonBlockingAim = false, fixedLauncher = false, waterweapon = true, fireSubmersed = true, submissile = false, tracks = false, paralyzer = false, impactOnly = false, noAutoTarget = false, manualfire = false, interceptSolo = true, interceptor = 0, targetable = 0, stockpile = false, coverageRange = 0, stockpileTime = 30, intensity = 0.899999976, falloffRate = 0.5, duration = 0.0500000007, beamLaserTTL = 0, soundTrigger = true, selfExplode = false, gravityAffected = false, highTrajectory = 2, myGravity = 0, noExplode = false, startvelocity = 0.00999999978, weaponacceleration = 0, turnrate = 0, projectilespeed = 46.6666679, explosionSpeed = 3.23358369, wobble = 0, dance = 0, trajectoryHeight = 0, largeBeamLaser = true, laserHardStop = false, isShield = false, shieldRepulser = false, smartShield = false, exteriorShield = false, visibleShield = false, visibleShieldRepulse = false, visibleShieldHitFrames = 0, shieldEnergyUse = 0, shieldRadius = 0, shieldForce = 0, shieldMaxSpeed = 0, shieldPower = 0, shieldPowerRegen = 0, shieldPowerRegenEnergy = 0, shieldStartingPower = 0, shieldRechargeDelay = 0, shieldGoodColor = {static binder = {class_ = 0x1c81780, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x13756a8 <float3::memberRegistrator>, name = 0xfa013d "float3", size = 12, alignment = 4, hasVTable = false, isCregStruct = true, constructor = 0xa8e196 <float3::_ConstructInstance(void*)>, destructor = 0xa8e1c4 <float3::_DestructInstance(void*)>, nextBinder = 0x1375620 <itype2<unsigned short>::binder>}, static memberRegistrator = 0x13757a0 <float3mreg>, static creg_hasVTable = false, static creg_isStruct = true, static CMP_EPS = 9.99999975e-05, static NORMALIZE_EPS = 9.99999996e-13, static maxxpos = 8191, static maxzpos = 8191, {{x = 0.5, y = 0.5, z = 1}, {r = 0.5, g = 0.5, b = 1}, {x1 = 0.5, y1 = 0.5, x2 = 1}, {s = 0.5, t = 0.5, p = 1}, {xstart = 0.5, ystart = 0.5, xend = 1}}}, shieldBadColor = { static binder = {class_ = 0x1c81780, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x13756a8 <float3::memberRegistrator>, name = 0xfa013d "float3", size = 12, alignment = 4, hasVTable = false, isCregStruct = true, constructor = 0xa8e196 <float3::_ConstructInstance(void*)>, destructor = 0xa8e1c4 <float3::_DestructInstance(void*)>, nextBinder = 0x1375620 <itype2<unsigned short>::binder>}, static memberRegistrator = 0x13757a0 <float3mreg>, static creg_hasVTable = false, static creg_isStruct = true, static CMP_EPS = 9.99999975e-05, static NORMALIZE_EPS = 9.99999996e-13, static maxxpos = 8191, static maxzpos = 8191, {{x = 1, y = 0.5, z = 0.5}, {r = 1, g = 0.5, b = 0.5}, {x1 = 1, y1 = 0.5, x2 = 0.5}, {s = 1, t = 0.5, p = 0.5}, {xstart = 1, ystart = 0.5, xend = 0.5}}}, shieldAlpha = 0.200000003, shieldArmorType = 0, shieldArmorTypeName = "default", shieldInterceptType = 0, interceptedByShieldType = 1, avoidFriendly = true, avoidFeature = false, avoidNeutral = false, avoidGround = true, targetBorder = 0, cylinderTargeting = 0, minIntensity = 1, heightBoostFactor = -1, proximityPriority = 1, projectileType = 64, collisionFlags = 0, sweepFire = false, canAttackGround = false, cameraShake = 180, dynDamageExp = 0, dynDamageMin = 0, dynDamageRange = 0, dynDamageInverted = false, customParams = std::map with 2 elements = {["statsdamage"] = "180", ["weaponvelocity"] = "1400"}, visuals = {color = { static binder = {class_ = 0x1c81780, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x13756a8 <float3::memberRegistrator>, name = 0xfa013d "float3", size = 12, alignment = 4, hasVTable = false, isCregStruct = true, constructor = 0xa8e196 <float3::_ConstructInstance(void*)>, destructor = 0xa8e1c4 <float3::_DestructInstance(void*)>, nextBinder = 0x1375620 <itype2<unsigned short>::binder>}, static memberRegistrator = 0x13757a0 <float3mreg>, static creg_hasVTable = false, static creg_isStruct = true, static CMP_EPS = 9.99999975e-05, static NORMALIZE_EPS = 9.99999996e-13, static maxxpos = 8191, static maxzpos = 8191, {{x = 0.25, y = 0, z = 1}, {r = 0.25, g = 0, b = 1}, {x1 = 0.25, y1 = 0, x2 = 1}, { s = 0.25, t = 0, p = 1}, {xstart = 0.25, ystart = 0, xend = 1}}}, color2 = {static binder = {class_ = 0x1c81780, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x13756a8 <float3::memberRegistrator>, name = 0xfa013d "float3", size = 12, alignment = 4, hasVTable = false, isCregStruct = true, constructor = 0xa8e196 <float3::_ConstructInstance(void*)>, destructor = 0xa8e1c4 <float3::_DestructInstance(void*)>, nextBinder = 0x1375620 <itype2<unsigned short>::binder>}, static memberRegistrator = 0x13757a0 <float3mreg>, static creg_hasVTable = false, static creg_isStruct = true, static CMP_EPS = 9.99999975e-05, static NORMALIZE_EPS = 9.99999996e-13, static maxxpos = 8191, static maxzpos = 8191, {{x = 1, y = 1, z = 1}, {r = 1, g = 1, b = 1}, {x1 = 1, y1 = 1, x2 = 1}, {s = 1, t = 1, p = 1}, {xstart = 1, ystart = 1, xend = 1}}}, model = 0x0, modelName = "", texNames = { "largelaser_long", "flare", "flare", "smallflare"}, ptrailExpGenTag = "", impactExpGenTag = "custom:FLASHLAZER", bounceExpGenTag = "", colorMap = 0x0, explosionScar = true, smokeTrail = false, texture1 = 0x1f650528, texture2 = 0x1f6501e8, texture3 = 0x1f6501e8, texture4 = 0x1f650e28, tilelength = 800, scrollspeed = 5, pulseSpeed = 1, laserflaresize = 12, thickness = 16, corethickness = 0.5, lodDistance = 1000, beamdecay = 1, stages = 5, alphaDecay = 1, sizeDecay = 0, separation = 1, noGap = true, alwaysVisible = true}} |
hokomoko (developer) 2015-07-07 14:26 |
Fix 606c94e33231575593ee8363142f4f0259f91312 committed to develop branch: Attempt to fix 0004891, repo: spring changeset id: 5326 |
![]() |
|||
Date Modified | Username | Field | Change |
---|---|---|---|
2015-07-07 13:56 | cleanrock | New Issue | |
2015-07-07 14:04 | cleanrock | Note Added: 0014931 | |
2015-07-07 14:16 | cleanrock | Note Added: 0014932 | |
2015-07-07 14:25 | cleanrock | Note Added: 0014933 | |
2015-07-07 14:26 | hokomoko | Changeset attached | => spring develop 606c94e3 |
2015-07-07 14:26 | hokomoko | Note Added: 0014934 | |
2015-07-07 14:26 | hokomoko | Assigned To | => hokomoko |
2015-07-07 14:26 | hokomoko | Status | new => resolved |
2015-07-07 14:26 | hokomoko | Resolution | open => fixed |