Tidy up day-of-week checks in QDateTimeParser

Simplified a return.
Corrected a comment.

Change-Id: I6b7f99b741ac5c1c8ddfad608843db3e89c20346
Reviewed-by: Mate Barany <mate.barany@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
bb10
Edward Welbourne 2022-09-23 16:35:30 +02:00
parent 915fb2f573
commit e8892e83d3
1 changed files with 2 additions and 6 deletions

View File

@ -973,11 +973,7 @@ static int weekDayWithinMonth(QCalendar calendar, int year, int month, int day,
const int maxDay = calendar.daysInMonth(month, year); // 0 if no such month
day = maxDay > 1 ? qBound(1, day, maxDay) : qMax(1, day);
day += dayOfWeekDiff(weekDay, calendar.dayOfWeek(QDate(year, month, day, calendar)));
if (day <= 0)
return day + 7;
if (maxDay > 0 && day > maxDay)
return day - 7;
return day;
return day <= 0 ? day + 7 : maxDay > 0 && day > maxDay ? day - 7 : day;
}
/*!
@ -995,7 +991,7 @@ static QDate actualDate(QDateTimeParser::Sections known, const QCalendar &calend
if (actual.isValid() && year % 100 == year2digits && calendar.dayOfWeek(actual) == dayofweek)
return actual; // The obvious candidate is fine :-)
if (dayofweek < 1 || dayofweek > 7) // Invalid: ignore
if (dayofweek < 1 || dayofweek > 7) // Intercallary (or invalid): ignore
known &= ~QDateTimeParser::DayOfWeekSectionMask;
// Assuming year > 0 ...