Bug#985489: 0ad freezes with 0.0.24b1

Bernhard Übelacker bernhardu at mailbox.org
Sat Apr 3 10:55:33 BST 2021


Dear Maintainer,
I tried to have a look at this savegame and when loaded
shows these freezes to me too.

An attached gdb shows that leaving VertexPathfinder::ComputeShortPath
takes some minutes, while the game is frozen.

Upstream might have already some optimizations
for this issue in [1].

At least the game shows an "obstacle" that might block some units,
because of an closed gate.

Kind regards,
Bernhard


(gdb) bt
#0  CheckVisibility (a=..., edges=..., a=..., edges=..., b=<synthetic pointer>...) at /usr/include/c++/10/bits/stl_vector.h:918
#1  VertexPathfinder::ComputeShortPath (this=0x5587684b0f50, request=..., cmpObstructionManager=...) at ../../../source/simulation2/helpers/VertexPathfinder.cpp:786
#2  0x00005587572ccc1d in CCmpPathfinder::PathfinderWorker::Work (this=0x558767340600, pathfinder=...) at ../../../source/simulation2/components/CCmpPathfinder.cpp:772
#3  0x00005587572ccffb in CCmpPathfinder::StartProcessingMoves (this=0x55875e086000, useMax=<optimized out>) at ../../../source/simulation2/components/CCmpPathfinder.cpp:841
#4  0x000055875725417f in CSimulation2Impl::Update (this=0x55875e1350c0, turnLength=<optimized out>, commands=std::vector of length 0, capacity 0) at ../../../source/simulation2/Simulation2.cpp:399
#5  0x000055875729647c in CTurnManager::Update (this=0x55875db87c20, simFrameLength=<optimized out>, maxTurns=1) at ../../../source/simulation2/system/TurnManager.cpp:169
#6  0x00005587573e786e in CGame::Update (this=0x55875bb809d0, deltaRealTime=0.20622983574867249, doInterpolate=<optimized out>) at ../../../source/ps/Game.cpp:400
#7  0x00005587571f3b32 in Frame () at ../../../source/main.cpp:426
#8  RunGameOrAtlas (argc=<optimized out>, argv=<optimized out>) at ../../../source/main.cpp:692
#9  0x00005587571e021a in main (argc=1, argv=0x7fffcf84d8c8) at ../../../source/main.cpp:743
(gdb) finish
Run till exit from #0  CheckVisibility (a=..., edges=..., a=..., edges=..., b=<synthetic pointer>...) at /usr/include/c++/10/bits/stl_vector.h:918
VertexPathfinder::ComputeShortPath (this=0x5587684b0f50, request=..., cmpObstructionManager=...) at ../../../source/simulation2/helpers/VertexPathfinder.cpp:786
786     ../../../source/simulation2/helpers/VertexPathfinder.cpp: Datei oder Verzeichnis nicht gefunden.
(gdb) finish
Run till exit from #0  VertexPathfinder::ComputeShortPath (this=0x5587684b0f50, request=..., cmpObstructionManager=...) at ../../../source/simulation2/helpers/VertexPathfinder.cpp:786
CCmpPathfinder::PathfinderWorker::Work (this=0x558767340600, pathfinder=...) at ../../../source/simulation2/components/CCmpPathfinder.cpp:773
...


[1] https://trac.wildfiregames.com/log/ps/trunk/source/simulation2/helpers/VertexPathfinder.cpp



More information about the Pkg-games-devel mailing list