Closed ryzom-pipeline closed 10 years ago
Original comment by Meelis Mägi (Bitbucket: [Meelis Mägi](https://bitbucket.org/Meelis Mägi), ).
Update..
Deadlock is in CWidgetManager::checkCoords()
#!c++
while (pIG->getParent()==rMG.Group && (pIG->getInvalidCoords()>0))
{
....
}
pIG->getInvalidCoords() == 1 when scrollbar is scrolled too long down.
adding simple deadlock counter that counts to 10 and then breaks the loop would be quick fix (usually it needs 2 passes )
With deadlock counter in place, its visible that content will end up in the middle of (its) window and ossilating +/-10px (or so) back and forth. It's possible to recover from it using mouse wheel to scroll back up a bit.
Original comment by Cédric Ochs (Bitbucket: [Cédric OCHS](https://bitbucket.org/Cédric OCHS), ).
Thanks a lot for the report and the fix !
Original comment by Cédric Ochs (Bitbucket: [Cédric OCHS](https://bitbucket.org/Cédric OCHS), ).
Fixed in c6b3672
Original report by Meelis Mägi (Bitbucket: [Meelis Mägi](https://bitbucket.org/Meelis Mägi), ).
First I thought that its a crash, but turns out its endless loop hehe
Break at interface_element.cpp:494 is when gdb attached to running process.
I let it to run a while, but trace did not get any longer than that.