From 2fe8add6000b6a31659f2fd24900a25743503655 Mon Sep 17 00:00:00 2001 From: George Hazan Date: Fri, 6 Apr 2018 16:33:43 +0300 Subject: fix for stupid bug in Windows: m_accList.OnSelChange is called twice recursively even if the list position isn't changed --- src/mir_app/src/proto_opts.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'src/mir_app') diff --git a/src/mir_app/src/proto_opts.cpp b/src/mir_app/src/proto_opts.cpp index 178391d408..1ded064a65 100644 --- a/src/mir_app/src/proto_opts.cpp +++ b/src/mir_app/src/proto_opts.cpp @@ -158,7 +158,7 @@ class CAccountManagerDlg : public CDlgBase HFONT m_hfntTitle, m_hfntText; int m_titleHeight, m_textHeight; int m_selectedHeight, m_normalHeight; - int m_iSelected; + int m_iSelected, m_iPrevSel = -1; CAccountListCtrl m_accList; CCtrlHyperlink m_link; @@ -425,8 +425,13 @@ public: void OnListSelChange(void*) { + int iSel = m_accList.GetCurSel(); + if (iSel == m_iPrevSel) + return; + + m_iPrevSel = iSel; UpdateAccountInfo(); - SelectItem(m_accList.GetCurSel()); + SelectItem(iSel); ::SetFocus(m_accList.GetHwnd()); } -- cgit v1.2.3