2025-08-03 20:55 CEST

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0002647Spring engineGeneralpublic2011-09-10 03:42
Reporterhoijui 
Assigned ToKloot 
PrioritynormalSeveritycrashReproducibilityalways
StatusresolvedResolutionfixed 
Product Version0.82.7+git 
Target VersionFixed in Version0.82.7+git 
Summary0002647: assertion triggered in weapon aiming code
Descriptioni found the problem, already, but i don't know the proper solution.

problem lies in rts/Sim/Weapons/Weapon.cpp.
when dif is set to ZeroVector at line 834,
then dif.Normalize() at line 874 triggers the assertion.
should we return false right after line 834?

https://github.com/spring/spring/blob/fab515de367648f4a8e2de6fd158175b1b1cabb2/rts/Sim/Weapons/Weapon.cpp#L834
https://github.com/spring/spring/blob/fab515de367648f4a8e2de6fd158175b1b1cabb2/rts/Sim/Weapons/Weapon.cpp#L874
Steps To ReproduceDEBUG build of spring 0.82.3-3405-g8dc52a1.

tested with S44 1.54 RC2 & NullAI on Brazillian Battlefield.

/cheat
/give gertiger
(do this in the middle of the enemy base, so tiger is inside enemy HQ)
Additional InformationProgram received signal SIGABRT, Aborted.
0x00007ffff410d995 in raise () from /lib64/libc.so.6
(gdb) bt
#0 0x00007ffff410d995 in raise () from /lib64/libc.so.6
#1 0x00007ffff410ed1f in abort () from /lib64/libc.so.6
#2 0x00007ffff41068dd in __assert_fail () from /lib64/libc.so.6
0000003 0x0000000000ab1609 in float3::Normalize (this=0x7fffffffc470) at rts/System/float3.h:434
0000004 0x00000000010a164a in CWeapon::TryTarget (this=0x11477d10, pos=..., userTarget=false, unit=0x7fffe8b57b10) at rts/Sim/Weapons/Weapon.cpp:874
0000005 0x000000000108d068 in CCannon::TryTarget (this=0x11477d10, pos=..., userTarget=false, unit=0x7fffe8b57b10) at rts/Sim/Weapons/Cannon.cpp:104
#6 0x00000000010a0c1e in CWeapon::SlowUpdate (this=0x11477d10, noAutoTargetOverride=false) at rts/Sim/Weapons/Weapon.cpp:740
#7 0x000000000109fc45 in CWeapon::SlowUpdate (this=0x11477d10) at rts/Sim/Weapons/Weapon.cpp:594
#8 0x000000000108da76 in CCannon::SlowUpdate (this=0x11477d10) at rts/Sim/Weapons/Cannon.cpp:204
#9 0x00000000010449cc in CUnit::SlowUpdateWeapons (this=0x10653500) at rts/Sim/Units/Unit.cpp:1045
0000010 0x0000000001044793 in CUnit::SlowUpdate (this=0x10653500) at rts/Sim/Units/Unit.cpp:1011
#11 0x000000000106b984 in CUnitHandler::Update (this=0x9e4bc20) at rts/Sim/Units/UnitHandler.cpp:320
0000012 0x0000000000ade5af in CGame::SimFrame (this=0x2d4c3f0) at rts/Game/Game.cpp:1434
0000013 0x0000000000b5c60d in CGame::ClientReadNet (this=0x2d4c3f0) at rts/Game/NetCommands.cpp:362
0000014 0x0000000000adbdcb in CGame::Update (this=0x2d4c3f0) at rts/Game/Game.cpp:889
#15 0x0000000001101c0d in SpringApp::UpdateSim (this=0x7fffffffd7b0, ac=0x2d4c3f0) at rts/System/SpringApp.cpp:982
#16 0x0000000001101c81 in SpringApp::Update (this=0x7fffffffd7b0) at rts/System/SpringApp.cpp:1060
#17 0x0000000001101ef5 in SpringApp::Run (this=0x7fffffffd7b0, argc=1, argv=0x7fffffffd978) at rts/System/SpringApp.cpp:1164
#18 0x00000000010df593 in MainFunc (argc=1, argv=0x7fffffffd978, ret=0x7fffffffd84c) at rts/System/Main.cpp:51
#19 0x00000000010df826 in Run (argc=1, argv=0x7fffffffd978) at rts/System/Main.cpp:62
0000020 0x00000000010df8bf in main (argc=1, argv=0x7fffffffd978) at rts/System/Main.cpp:92
TagsNo tags attached.
Checked infolog.txt for Errors
Attached Files

-Relationships
+Relationships

-Notes
There are no notes attached to this issue.
+Notes

-Issue History
Date Modified Username Field Change
2011-09-09 19:01 hoijui New Issue
2011-09-09 19:51 Kloot Assigned To => Kloot
2011-09-09 19:51 Kloot Status new => assigned
2011-09-10 03:42 Kloot Status assigned => resolved
2011-09-10 03:42 Kloot Fixed in Version => 0.82.7+git
2011-09-10 03:42 Kloot Resolution open => fixed
+Issue History