From b99caf8f262dc2bcdf06b52405eeee08f37a886c Mon Sep 17 00:00:00 2001 From: Edward Welbourne Date: Thu, 10 Dec 2020 16:19:17 +0100 Subject: [PATCH] Check date validity in calendar methods taking a QDate Previously neglected, in dateFromParts() and dayOfWeek(), which only make sense for valid dates. Change-Id: I44879bb441dbf51b96c8fd4d45e8f07423e63047 Reviewed-by: Thiago Macieira (cherry picked from commit ac1008c16f58d95ae4ff0a7864e3bcb0783cc439) Reviewed-by: Qt Cherry-pick Bot --- src/corelib/time/qcalendar.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/corelib/time/qcalendar.cpp b/src/corelib/time/qcalendar.cpp index feecab03d58..db17da0eca7 100644 --- a/src/corelib/time/qcalendar.cpp +++ b/src/corelib/time/qcalendar.cpp @@ -1059,7 +1059,7 @@ QDate QCalendar::dateFromParts(const QCalendar::YearMonthDay &parts) const */ QCalendar::YearMonthDay QCalendar::partsFromDate(QDate date) const { - return d ? d->julianDayToDate(date.toJulianDay()) : YearMonthDay(); + return d && date.isValid() ? d->julianDayToDate(date.toJulianDay()) : YearMonthDay(); } /*! @@ -1073,7 +1073,7 @@ QCalendar::YearMonthDay QCalendar::partsFromDate(QDate date) const */ int QCalendar::dayOfWeek(QDate date) const { - return d ? d->dayOfWeek(date.toJulianDay()) : 0; + return d && date.isValid() ? d->dayOfWeek(date.toJulianDay()) : 0; } // Locale data access