diff options
Diffstat (limited to 'src/gui/painting/qcolor_p.cpp')
-rw-r--r-- | src/gui/painting/qcolor_p.cpp | 6 |
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; } |