Details
-
Task
-
Resolution: Fixed
-
P2: Important
-
None
-
None
-
None
-
8
-
15368fb31b (qt/qtbase/dev) 15368fb31b (qt/tqtc-qtbase/dev), 3fedcd4e4 (dev), f46bcad99 (dev), d83aabad0 (dev), 41824a02c (dev)
-
Team B Foundation Sprint 55, Foundation Sprint 62, Foundation Sprint 63, Foundation Sprint 64, Foundation Sprint 65, Foundation Sprint 66, Foundation Sprint 67, Foundation Sprint 68, Foundation Sprint 69, Foundation Sprint 70, Foundation Sprint 71, Foundation Sprint 72, Foundation Sprint 73, Foundation Sprint 74, Foundation Sprint 75, Foundation Sprint 76, Foundation Sprint 77, Foundation Sprint 89, Foundation Sprint 90
Description
We currently use std::boyer_moore_searcher for that, but there are two problems with that:
- Microsoft's STL, until quite recently, had a bug in their implementation: https://github.com/microsoft/STL/pull/724
- AppleClang's libc++ doesn't include it, yet, and our fall-back of converting needle and haystack to UTF-16 and doing the search in UTF-16 space is unacceptable
We can't add a CS argument to QByteArrayMatcher, since we want to get rid of string-ish API for QByteArray, so I guess we'll just copy the code and use the latin1lower table in qstring.cpp has the hash function.
Attachments
Issue Links
- blocks
-
QTBUG-101046 Use of QByteArray::simplified() prevents noexcept QStringConverter::encodingForHtml()
-
- Reported
-
- resulted in
-
QTBUG-116579 Add static Latin1 Boyer-Moore searcher for Green Hills Compilers as well
-
- Reported
-