From: Václav Slavík Date: Mon, 12 Sep 2011 09:23:59 +0000 (+0000) Subject: Fix appending of non-leaf node to wxGTK's wxDataViewCtrl. X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/5c65a66151728d7fd3e5c3bc2d4ff31a151916e7 Fix appending of non-leaf node to wxGTK's wxDataViewCtrl. This was accidentally broken in r68965: appending a branch node after all others node resulted in corruption of m_nodes, as the node was never added to the list. Fixes #13467. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@69070 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/gtk/dataview.cpp b/src/gtk/dataview.cpp index a50f37aa30..b848fcdc93 100644 --- a/src/gtk/dataview.cpp +++ b/src/gtk/dataview.cpp @@ -380,6 +380,7 @@ public: // Insert into m_nodes so that the order of nodes in m_nodes is the // same as the order of their corresponding IDs in m_children: const unsigned int count = m_nodes.GetCount(); + bool inserted = false; for (unsigned i = 0; i < count; i++) { wxGtkTreeModelNode *node = m_nodes[i]; @@ -387,9 +388,12 @@ public: if ( (unsigned)posInChildren >= pos ) { m_nodes.Insert(child, i); + inserted = true; break; } } + if ( !inserted ) + m_nodes.Add(child); m_children.Insert( id, pos ); }