QDateTimeParser: drop an invalid and largely pointless "optimization"
Now that the maximum and minimum might not be in local time, the day might not be the same as the local time day. In any case, the "saving" of checking for being past the end of that day is negligible compared to all the other wanton costs of the date-time parser. This is a follow-up to commit b6a11a4ee5319366f14c11c7cf3a4f1dbf33cfd5; thanks to Tor Arne for reporting the resulting assertion failures. Pick-to: 6.8 6.7 6.5 Change-Id: I1ba443df9340fa63b8765c25004b51467ca5244d Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
This commit is contained in:
parent
96c07655c4
commit
070ab9e852
@ -1619,16 +1619,11 @@ QDateTimeParser::parse(const QString &input, int position,
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (context == FromString) {
|
||||
// optimization
|
||||
Q_ASSERT(maximum.date().toJulianDay() == 5373484);
|
||||
if (scan.value.date().toJulianDay() > 5373484)
|
||||
scan.state = Invalid;
|
||||
} else if (scan.value > maximum) {
|
||||
if (scan.value > maximum)
|
||||
scan.state = Invalid;
|
||||
}
|
||||
|
||||
QDTPDEBUG << "not checking intermediate because scanned value is" << scan.value << minimum << maximum;
|
||||
QDTPDEBUG << "not checking intermediate because scanned value is"
|
||||
<< scan.value << minimum << maximum;
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user