Title: [220444] trunk/Source/WebCore
Revision
220444
Author
zandober...@gmail.com
Date
2017-08-09 00:00:34 -0700 (Wed, 09 Aug 2017)

Log Message

[Soup] Incorrect conversion in msToSoupDate()
https://bugs.webkit.org/show_bug.cgi?id=175320

Reviewed by Carlos Garcia Campos.

Original patch by VaL Doroshchuk.

* platform/network/soup/NetworkStorageSessionSoup.cpp:
(WebCore::msToSoupDate): monthFromDayInYear() returns a value in the [0,11] range,
while soup_date_new() expects a month value in the [1,12] range. The return value
must be thus incremented by one to match that expectation.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (220443 => 220444)


--- trunk/Source/WebCore/ChangeLog	2017-08-09 05:36:57 UTC (rev 220443)
+++ trunk/Source/WebCore/ChangeLog	2017-08-09 07:00:34 UTC (rev 220444)
@@ -1,3 +1,17 @@
+2017-08-09  Zan Dobersek  <zdober...@igalia.com>
+
+        [Soup] Incorrect conversion in msToSoupDate()
+        https://bugs.webkit.org/show_bug.cgi?id=175320
+
+        Reviewed by Carlos Garcia Campos.
+
+        Original patch by VaL Doroshchuk.
+
+        * platform/network/soup/NetworkStorageSessionSoup.cpp:
+        (WebCore::msToSoupDate): monthFromDayInYear() returns a value in the [0,11] range,
+        while soup_date_new() expects a month value in the [1,12] range. The return value
+        must be thus incremented by one to match that expectation.
+
 2017-08-08  Wenson Hsieh  <wenson_hs...@apple.com>
 
         Unreviewed, rolling out r220393.

Modified: trunk/Source/WebCore/platform/network/soup/NetworkStorageSessionSoup.cpp (220443 => 220444)


--- trunk/Source/WebCore/platform/network/soup/NetworkStorageSessionSoup.cpp	2017-08-09 05:36:57 UTC (rev 220443)
+++ trunk/Source/WebCore/platform/network/soup/NetworkStorageSessionSoup.cpp	2017-08-09 07:00:34 UTC (rev 220444)
@@ -294,7 +294,10 @@
     int year = msToYear(ms);
     int dayOfYear = dayInYear(ms, year);
     bool leapYear = isLeapYear(year);
-    return soup_date_new(year, monthFromDayInYear(dayOfYear, leapYear), dayInMonthFromDayInYear(dayOfYear, leapYear), msToHours(ms), msToMinutes(ms), static_cast<int>(ms / 1000) % 60);
+
+    // monthFromDayInYear() returns a value in the [0,11] range, while soup_date_new() expects
+    // a value in the [1,12] range, meaning we have to manually adjust the month value.
+    return soup_date_new(year, monthFromDayInYear(dayOfYear, leapYear) + 1, dayInMonthFromDayInYear(dayOfYear, leapYear), msToHours(ms), msToMinutes(ms), static_cast<int>(ms / 1000) % 60);
 }
 
 static SoupCookie* toSoupCookie(const Cookie& cookie)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to