From: Robert Roebling Date: Tue, 28 Aug 2007 09:47:01 +0000 (+0000) Subject: Fix from Bo X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/d92cb0154bf43e97a0848ad884c9d60f0627c1e9 Fix from Bo git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48425 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/src/generic/datavgen.cpp b/src/generic/datavgen.cpp index b3dd8f5ef3..7dfffb0c4b 100644 --- a/src/generic/datavgen.cpp +++ b/src/generic/datavgen.cpp @@ -2936,13 +2936,17 @@ wxDataViewTreeNode * wxDataViewMainWindow::FindNode( const wxDataViewItem & item BuildTreeHelper(model, node->GetItem(), node); wxDataViewTreeNodes nodes = node->GetNodes(); - //The wxSortedArray search a node in binary search, so using Item() is more efficient - wxDataViewTreeNode temp; - temp.SetItem(*(n->GetData())); - int index = nodes.Index( &temp ); - if( index == wxNOT_FOUND ) + int i = 0; + for (; i < nodes.GetCount(); i ++) + { + if (nodes[i]->GetItem() == *(n->GetData())) + { + node = nodes[i]; + break; + } + } + if (i == nodes.GetCount()) return NULL; - node = nodes[index]; } else return NULL;