ignore bCase parameter of wxSortedArrayString::Index() in STL build just as we do in non-STL one (it didn't work correctly anyhow)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61279 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -475,31 +475,19 @@ void wxArrayString::Sort(bool reverseOrder)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int wxSortedArrayString::Index(const wxString& str, bool bCase, bool WXUNUSED(bFromEnd)) const
|
int wxSortedArrayString::Index(const wxString& str,
|
||||||
|
bool WXUNUSED_UNLESS_DEBUG(bCase),
|
||||||
|
bool WXUNUSED_UNLESS_DEBUG(bFromEnd)) const
|
||||||
{
|
{
|
||||||
wxSortedArrayString::const_iterator it;
|
wxASSERT_MSG( bCase && !bFromEnd,
|
||||||
|
"search parameters ignored for sorted array" );
|
||||||
|
|
||||||
if (bCase)
|
wxSortedArrayString::const_iterator
|
||||||
it = std::lower_bound(begin(), end(), str,
|
it = std::lower_bound(begin(), end(), str, wxStringCompare(wxStringCmp()));
|
||||||
wxStringCompare(wxStringCmp()));
|
|
||||||
else
|
|
||||||
it = std::lower_bound(begin(), end(), str,
|
|
||||||
wxStringCompare(wxStringCmpNoCase()));
|
|
||||||
|
|
||||||
if (it == end())
|
if ( it == end() || str.Cmp(*it) != 0 )
|
||||||
return wxNOT_FOUND;
|
return wxNOT_FOUND;
|
||||||
|
|
||||||
if (bCase)
|
|
||||||
{
|
|
||||||
if (str.Cmp(*it) != 0)
|
|
||||||
return wxNOT_FOUND;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (str.CmpNoCase(*it) != 0)
|
|
||||||
return wxNOT_FOUND;
|
|
||||||
}
|
|
||||||
|
|
||||||
return it - begin();
|
return it - begin();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user