diff options
author | Ulf Hermann <ulf.hermann@qt.io> | 2022-11-25 09:22:21 +0100 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@qt.io> | 2022-11-25 10:55:39 +0100 |
commit | 6aa02bdeaf3449a254871ce9f893d8353bf26a53 (patch) | |
tree | 9af4bdc95bc5439015d40e5dc75f2cb5210d8e26 /src | |
parent | 95b4cfb1af9aefe3ff3aa151804f464388329c63 (diff) |
QLocale: Have qstrntod() return end of parsed string also on underflow
Underflows should be treated the same as overflows.
Fixes: QTBUG-108628
Change-Id: I23aa7bbe1d103778cefca08bd3e584e72f306583
Reviewed-by: MÃ¥rten Nordheim <marten.nordheim@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Diffstat (limited to 'src')
-rw-r--r-- | src/corelib/text/qlocale_tools.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/corelib/text/qlocale_tools.cpp b/src/corelib/text/qlocale_tools.cpp index ac4c870802..a123714f7f 100644 --- a/src/corelib/text/qlocale_tools.cpp +++ b/src/corelib/text/qlocale_tools.cpp @@ -354,7 +354,7 @@ QSimpleParsedNumber<double> qt_asciiToDouble(const char *num, qsizetype numLen, for (int i = 0; i < processed; ++i) { if (num[i] >= '1' && num[i] <= '9') { // if a digit before any 'e' is not 0, then a non-zero number was intended. - return {}; + return {d, -processed}; } else if (num[i] == 'e' || num[i] == 'E') { break; } |