Hey.
I have an update. According to "Immediate" debug window m_LogList.GetItemCount(); return 0 while inside that loop. That might explain what happens next - I suppose GetTopIndex() returns -1 and GetCountPerPage() return 0 and their sum gets into "endRow".
Best wishes.
Dmitry.
28.01.2011, 12:17, "Dmitry" <wipedout_at_yandex.ru>:
> Hey.
>
> I noticed that a rather old revision (yes I see no changes that could have changed that behavior since that revision) has Log Dialog hanging sometimes. I have no idea what it depends on - just once in a while I when ask to show the changelog the dialog appears and hangs gray for ages, Task Manager shows full load of the CPU core.
>
> I attached the debugger and what I'm seeing is that it hangs inside CLogDlg::ResizeAllListCtrlCols(bool bOnlyVisible) with "bOnlyVisible" set to true. It is inside the loop:
>
> for (size_t index = startRow; index<endRow; ++index)
>
> with "endRow" being shown as 0xFFFFFFFF by the debugger. So looks like for whatever reason "endRow" somehow became -1. "endRow" is being initialized by the following code:
>
> startRow = m_LogList.GetTopIndex();
> endRow = startRow + m_LogList.GetCountPerPage();
>
> Do you have any idea of why "endRow" could have become equal to -1?
>
> Thank you.
> Dmitry.
>
> ------------------------------------------------------
> http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=2701145
>
> To unsubscribe from this discussion, e-mail: [dev-unsubscribe_at_tortoisesvn.tigris.org].
------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=757&dsMessageId=2701153
To unsubscribe from this discussion, e-mail: [dev-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2011-01-28 11:15:51 CET