View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
---|---|---|---|---|---|---|---|---|---|
0001077 | Spring engine | General | public | 2008-10-09 00:40 | 2008-10-09 23:07 | ||||
Reporter | imbaczek | ||||||||
Assigned To | Kloot | ||||||||
Priority | normal | Severity | crash | Reproducibility | always | ||||
Status | resolved | Resolution | fixed | ||||||
Product Version | 0.77b2 | ||||||||
Target Version | Fixed in Version | ||||||||
Summary | 0001077: LosHandler crash 77b2 | ||||||||
Description | more to come, THIS WIP6a this was a synced crash - that is, everybody crashed at the same time. | ||||||||
Additional Information | /home/spring/src/winTag_spring_0.77b2/rts/Sim/Misc/LosHandler.cpp:257 /home/spring/src/winTag_spring_0.77b2/rts/Sim/Misc/LosHandler.cpp:198 /home/spring/src/winTag_spring_0.77b2/rts/Sim/MoveTypes/TAAirMoveType.cpp:908 /home/spring/src/winTag_spring_0.77b2/rts/Sim/Units/Unit.cpp:747 /usr/lib/gcc/i586-mingw32msvc/4.2.1-sjlj/include/c++/bits/stl_list.h:142 /home/spring/src/winTag_spring_0.77b2/rts/Sim/Units/UnitHandler.cpp:286 /home/spring/src/winTag_spring_0.77b2/rts/Game/Game.cpp:3163 /home/spring/src/winTag_spring_0.77b2/rts/System/Sync/SyncChecker.h:43 /home/spring/src/winTag_spring_0.77b2/rts/Game/Game.cpp:3553 /home/spring/src/winTag_spring_0.77b2/rts/Game/Game.cpp:2478 /home/spring/src/winTag_spring_0.77b2/rts/System/SpringApp.cpp:870 /home/spring/src/winTag_spring_0.77b2/rts/System/SpringApp.cpp:1068 /home/spring/src/winTag_spring_0.77b2/rts/System/Main.cpp:60 /home/spring/src/winTag_spring_0.77b2/rts/System/Main.cpp:122 Action.cpp:0 /home/ron/devel/debian/mingw32-runtime/mingw32-runtime-3.13/build_dir/src/mingw-runtime-3.13-20070825-1/crt1.c:237 /home/ron/devel/debian/mingw32-runtime/mingw32-runtime-3.13/build_dir/src/mingw-runtime-3.13-20070825-1/crt1.c:271 | ||||||||
Tags | No tags attached. | ||||||||
Checked infolog.txt for Errors | |||||||||
Attached Files |
|
![]() |
|
imbaczek (reporter) 2008-10-09 00:53 |
replay crashes reliably. |
Kloot (developer) 2008-10-09 01:10 |
Hmm, I get a different trace (one which makes no sense though): #0 CAirMoveType::UpdateLanded (this=0xe365290) at rts/System/Sync/SyncedPrimitive.h:101 #1 0x082f5cc4 in CAirMoveType::Update (this=0xe365290) at rts/Sim/MoveTypes/AirMoveType.cpp:267 #2 0x083a949a in CUnit::Update (this=0xbf2d120) at rts/Sim/Units/Unit.cpp:527 0000003 0x083a14bb in CUnitHandler::Update (this=0x99bc9f0) at rts/Sim/Units/UnitHandler.cpp:276 0000004 0x0818f0a9 in CGame::SimFrame (this=0x897be80) at rts/Game/Game.cpp:3160 0000005 0x0819f782 in CGame::ClientReadNet (this=0x897be80) at rts/Game/Game.cpp:3550 #6 0x081a3343 in CGame::Update (this=0x897be80) at rts/Game/Game.cpp:2477 #7 0x084311db in SpringApp::Update (this=0xbfc94bb0) at rts/System/SpringApp.cpp:870 #8 0x08437835 in SpringApp::Run (this=0xbfc94bb0, argc=2, argv=0xbfc94c94) at rts/System/SpringApp.cpp:1068 #9 0x08455cb3 in Run (argc=2, argv=0xbfc94c94) at rts/System/Main.cpp:95 0000010 0x08455d02 in main (argc=Cannot access memory at address 0xf0000000 ) at rts/System/Main.cpp:111 |
Kloot (developer) 2008-10-09 01:18 |
Better trace now: spring: rts/Sim/Misc/LosHandler.h:129: bool CLosHandler::InLos(float3, int): Assertion `static_cast<unsigned>(square) < losMap[allyTeam].size()' failed. Program received signal SIGABRT, Aborted. [Switching to Thread -1233180960 (LWP 19828)] 0xffffe410 in __kernel_vsyscall () #0 0xffffe410 in __kernel_vsyscall () #1 0xb7676875 in raise () from /lib/tls/i686/cmov/libc.so.6 #2 0xb7678201 in abort () from /lib/tls/i686/cmov/libc.so.6 0000003 0xb766fb6e in __assert_fail () from /lib/tls/i686/cmov/libc.so.6 0000004 0x085141b5 in LuaSyncedRead::GetPositionLosState (L=0x8c395d0) at rts/Sim/Misc/LosHandler.h:129 0000005 0x0828169f in luaD_precall (L=0x8c395d0, func=0xd6a1978, nresults=2) at rts/lib/lua/src/ldo.cpp:319 #6 0x0826c032 in luaV_execute (L=0x8c395d0, nexeccalls=2) at rts/lib/lua/src/lvm.cpp:616 #7 0x082819e0 in luaD_call (L=0x8c395d0, func=0xd6a18c8, nResults=0) at rts/lib/lua/src/ldo.cpp:377 #8 0x08277761 in f_call (L=0x8c395d0, ud=0xbfba5028) at rts/lib/lua/src/lapi.cpp:817 #9 0x0828124a in luaD_rawrunprotected (L=0x8c395d0, f=0x8277740 <f_call>, ud=0xbfba5028) at rts/lib/lua/src/ldo.cpp:116 0000010 0x082812cf in luaD_pcall (L=0x8c395d0, func=0x8277740 <f_call>, u=0xbfba5028, old_top=8, ef=0) at rts/lib/lua/src/ldo.cpp:461 #11 0x082775dd in lua_pcall (L=0x8c395d0, nargs=0, nresults=0, errfunc=0) at rts/lib/lua/src/lapi.cpp:838 0000012 0x0852f280 in CLuaHandle::RunCallIn (this=0x8c39488, hs=@0x874f680, inArgs=0, outArgs=0) at rts/Lua/LuaHandle.cpp:187 0000013 0x08530875 in CLuaHandle::DrawWorld (this=0x8c39488) at rts/Lua/LuaHandle.cpp:206 0000014 0x0845e57a in CEventHandler::DrawWorld (this=0x874d420) at rts/System/EventHandler.cpp:388 #15 0x0818c4df in CGame::DrawWorld (this=0x88d0850) at rts/Game/Game.cpp:2568 #16 0x08193248 in CGame::Draw (this=0x88d0850) at rts/Game/Game.cpp:2760 #17 0x08431232 in SpringApp::Update (this=0xbfba52c0) at rts/System/SpringApp.cpp:880 #18 0x08437835 in SpringApp::Run (this=0xbfba52c0, argc=2, argv=0xbfba53a4) at rts/System/SpringApp.cpp:1068 #19 0x08455cb3 in Run (argc=2, argv=0xbfba53a4) at rts/System/Main.cpp:95 0000020 0x08455d02 in main (argc=Cannot access memory at address 0x4d74 ) at rts/System/Main.cpp:111 |
Kloot (developer) 2008-10-09 02:52 Last edited: 2008-10-09 03:00 |
Some further details: [CLosHandler::InLos(float3)] pos.x: nan, pos.z: nan, square: -2147483648, at: 0 spring: rts/Sim/Misc/LosHandler.h:134: bool CLosHandler::InLos(float3, int): Assertion `static_cast<unsigned>(square) < losMap[allyTeam].size()' failed. No idea where it comes from yet. edit: [LuaSyncedRead::GetPositionLosState()] pos: <nan, 131.258499, nan> |
Auswaschbar (reporter) 2008-10-09 02:54 Last edited: 2008-10-09 02:55 |
#2 0x00007fde0af2d49f in __assert_fail () from /lib/libc.so.6 No symbol table info available. 0000003 0x00000000006728b6 in CQuadField::GetQuad (this=0x3b92c20, i=-2147483648) at /home/karl/spring/trunk/rts/Sim/Misc/QuadField.h:58 __PRETTY_FUNCTION__ = "const CQuadField::Quad& CQuadField::GetQuad(int) const" 0000004 0x000000000066b9a4 in CGameHelper::TestNeutralCone (this=0x16a93a0, from=@0xdcf6fc0, dir=@0x7fff164b4140, length=nan(0x400000), spread=0.0557534359, owner=0xbbc5380) at /home/karl/spring/trunk/rts/Game/GameHelper.cpp:837 quad = (const CQuadField::Quad &) @0x7fc00000004b40f0: <error reading variable> qi = (int *) 0x7fff164b30f0 quads = {snip} endQuad = (int *) 0x7fff164b30f4 0000005 0x0000000000b82b8f in CLaserCannon::TryTarget (this=0xdcf6f50, pos=@0x7fff164b41e0, userTarget=false, unit=0xc2c05b0) at /home/karl/spring/trunk/rts/Sim/Weapons/LaserCannon.cpp:77 dir = {<SFloat3> = {x = nan(0x400000), y = nan(0x400000), z = nan(0x400000)}, static binder = {class_ = 0x138f630, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x11866c0, name = 0xd41670 "float3", size = 12, constructor = 0xbb390a <float3::_ConstructInstance(void*)>, destructor = 0xbb393a <float3::_DestructInstance(void*)>, nextBinder = 0x1186840}, static memberRegistrator = 0x1186738, static maxxpos = 8191, static maxzpos = 8191} length = nan(0x400000) spread = 0.0557534359 #6 0x0000000000ba1d41 in CWeapon::AttackUnit (this=0xdcf6f50, unit=0xc2c05b0, userTarget=false) at /home/karl/spring/trunk/rts/Sim/Weapons/Weapon.cpp:515 tempTargetPos = {<SFloat3> = {x = 1978.77356, y = 82.43647, z = 4412.19385}, static binder = {class_ = 0x138f630, base = 0x0, flags = creg::CF_None, memberRegistrator = 0x11866c0, name = 0xd41670 "float3", size = 12, constructor = 0xbb390a <float3::_ConstructInstance(void*)>, destructor = 0xbb393a <float3::_DestructInstance(void*)>, nextBinder = 0x1186840}, static memberRegistrator = 0x1186738, static maxxpos = 8191, static maxzpos = 8191} appHeight = -7 #7 0x0000000000b033b6 in CUnit::SlowUpdate (this=0xbbc5380) at /home/karl/spring/trunk/rts/Sim/Units/Unit.cpp:892 w = (class CWeapon *) 0xdcf6f50 wi = {_M_current = 0xbe13d48} oldCloak = false |
Kloot (developer) 2008-10-09 03:46 Last edited: 2008-10-09 03:47 |
First nans show up in CWeapon::Update at: float3 lead = targetUnit->speed*(weaponDef->predictBoost+predictSpeedMod*(1.0f - weaponDef->predictBoost))*predict; if (weaponDef->leadLimit >= 0.0f && lead.Length() > weaponDef->leadLimit + weaponDef->leadBonus*owner->experience) { lead *= (weaponDef->leadLimit + weaponDef->leadBonus*owner->experience) / (lead.Length()); } targetPos = helper->GetUnitErrorPos(targetUnit, owner->allyteam) + lead; // targetUnit: 662 (comet, targetUnit->pos: <nan, 81.940002, nan>) // targetPos: <nan, 62.181381, nan>, lead: <nan, 0.000000, nan> |
Kloot (developer) 2008-10-09 13:57 |
one down... |
![]() |
|||
Date Modified | Username | Field | Change |
---|---|---|---|
2008-10-09 00:40 | imbaczek | New Issue | |
2008-10-09 00:40 | imbaczek | File Added: infolog.txt | |
2008-10-09 00:42 | imbaczek | Description Updated | |
2008-10-09 00:42 | imbaczek | Additional Information Updated | |
2008-10-09 00:53 | imbaczek | File Added: 20081009_003129_unnamed_0.77b2.sdf | |
2008-10-09 00:53 | imbaczek | Note Added: 0002706 | |
2008-10-09 01:02 | imbaczek | Summary | another crash 77b2 => LosHandler crash 77b2 |
2008-10-09 01:10 | Kloot | Note Added: 0002708 | |
2008-10-09 01:18 | Kloot | Note Added: 0002709 | |
2008-10-09 02:24 | imbaczek | Severity | minor => crash |
2008-10-09 02:52 | Kloot | Note Added: 0002711 | |
2008-10-09 02:54 | Auswaschbar | Note Added: 0002712 | |
2008-10-09 02:55 | Auswaschbar | Note Edited: 0002712 | |
2008-10-09 03:00 | Kloot | Note Edited: 0002711 | |
2008-10-09 03:46 | Kloot | Note Added: 0002713 | |
2008-10-09 03:47 | Kloot | Note Edited: 0002713 | |
2008-10-09 13:57 | Kloot | Status | new => resolved |
2008-10-09 13:57 | Kloot | Resolution | open => fixed |
2008-10-09 13:57 | Kloot | Assigned To | => Kloot |
2008-10-09 13:57 | Kloot | Note Added: 0002726 | |
2008-10-09 23:07 | tvo | Product Version | => 0.77b2 |