summaryrefslogtreecommitdiffstats
path: root/src/gui/painting/qcolor_p.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/painting/qcolor_p.cpp')
-rw-r--r--src/gui/painting/qcolor_p.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gui/painting/qcolor_p.cpp b/src/gui/painting/qcolor_p.cpp
index b913f5338c..ca5c56e07e 100644
--- a/src/gui/painting/qcolor_p.cpp
+++ b/src/gui/painting/qcolor_p.cpp
@@ -49,6 +49,8 @@
#include "qrgb.h"
#include "qstringlist.h"
+#include <algorithm>
+
QT_BEGIN_NAMESPACE
static inline int h2i(char hex)
@@ -301,8 +303,8 @@ inline bool operator<(const RGBData &data, const char *name)
static bool get_named_rgb(const char *name_no_space, QRgb *rgb)
{
QByteArray name = QByteArray(name_no_space).toLower();
- const RGBData *r = qBinaryFind(rgbTbl, rgbTbl + rgbTblSize, name.constData());
- if (r != rgbTbl + rgbTblSize) {
+ const RGBData *r = std::lower_bound(rgbTbl, rgbTbl + rgbTblSize, name.constData());
+ if ((r != rgbTbl + rgbTblSize) && !(name.constData() < *r)) {
*rgb = r->value;
return true;
}