this should fix ubisoft connect outputting unknown timezone UTC in logs
-- v7: wininet/tests: Add test for UTC timezone.
From: Etaash Mathamsetty etaash.mathamsetty@gmail.com
--- dlls/wininet/http.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/dlls/wininet/http.c b/dlls/wininet/http.c index b42f823208c..6c722d7e9df 100644 --- a/dlls/wininet/http.c +++ b/dlls/wininet/http.c @@ -4432,7 +4432,7 @@ static BOOL HTTP_ParseDateAsAsctime(LPCWSTR value, FILETIME *ft) /* asctime() doesn't report a timezone, but some web servers do, so accept * with or without GMT. */ - if (*ptr && wcscmp(ptr, L"GMT")) + if (*ptr && (wcscmp(ptr, L"GMT") && wcscmp(ptr, L"UTC"))) { ERR("unexpected timezone %s\n", debugstr_w(ptr)); return FALSE; @@ -4509,7 +4509,7 @@ static BOOL HTTP_ParseRfc1123Date(LPCWSTR value, FILETIME *ft) while (iswspace(*ptr)) ptr++;
- if (wcscmp(ptr, L"GMT")) + if (wcscmp(ptr, L"GMT") && wcscmp(ptr, L"UTC")) { ERR("unexpected time zone %s\n", debugstr_w(ptr)); return FALSE; @@ -4626,7 +4626,7 @@ static BOOL HTTP_ParseRfc850Date(LPCWSTR value, FILETIME *ft) while (iswspace(*ptr)) ptr++;
- if (wcscmp(ptr, L"GMT")) + if (wcscmp(ptr, L"GMT") && wcscmp(ptr, L"UTC")) { ERR("unexpected time zone %s\n", debugstr_w(ptr)); return FALSE;
From: Etaash Mathamsetty etaash.mathamsetty@gmail.com
--- dlls/wininet/tests/internet.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/dlls/wininet/tests/internet.c b/dlls/wininet/tests/internet.c index 04b7f1041f7..176cfcc8961 100644 --- a/dlls/wininet/tests/internet.c +++ b/dlls/wininet/tests/internet.c @@ -916,9 +916,11 @@ static void test_InternetTimeToSystemTime(void) test_data[] = { { "Fri, 07 Jan 2005 12:06:35 GMT", &expect1, TRUE }, + { "Fri, 07 Jan 2005 12:06:35 UTC", &expect1, TRUE }, { " fri, 7 jan 2005 12 06 35", &expect1, TRUE }, { "Fri, 07-01-2005 12:06:35", &expect1, TRUE }, { "5, 07-01-2005 12:06:35 GMT", &expect1, TRUE }, + { "5, 07-01-2005 12:06:35 UTC", &expect1, TRUE }, { "5, 07-01-2005 12:06:35 GMT;", &expect1, TRUE }, { "5, 07-01-2005 12:06:35 GMT123", &expect1, TRUE }, { "2, 11 01 2022 11 13 05", &expect2, TRUE },
Hans Leidekker (@hans) commented about dlls/wininet/tests/internet.c:
test_data[] = { { "Fri, 07 Jan 2005 12:06:35 GMT", &expect1, TRUE },
{ "Fri, 07 Jan 2005 12:06:35 UTC", &expect1, TRUE }, { " fri, 7 jan 2005 12 06 35", &expect1, TRUE }, { "Fri, 07-01-2005 12:06:35", &expect1, TRUE }, { "5, 07-01-2005 12:06:35 GMT", &expect1, TRUE },
{ "5, 07-01-2005 12:06:35 UTC", &expect1, TRUE },
It would be nice to test HTTP_ParseDateAsAsctime() as well. Something like this on top of your patch:
``` diff --git a/dlls/wininet/tests/internet.c b/dlls/wininet/tests/internet.c index 176cfcc8961..eeb50bdb9fc 100644 --- a/dlls/wininet/tests/internet.c +++ b/dlls/wininet/tests/internet.c @@ -928,6 +928,9 @@ static void test_InternetTimeToSystemTime(void) { "2, 11*01/2022 11+13=05", &expect2, TRUE }, { "2, 11-Jan-2022 11:13:05", &expect2, TRUE }, { "Fr", NULL, FALSE }, + { "Fri Jan 7 12:06:35 2005", &expect1, TRUE }, + { "Fri Jan 7 12:06:35 2005 GMT", &expect1, TRUE }, + { "Fri Jan 7 12:06:35 2005 UTC", &expect1, TRUE }, };
ret = pInternetTimeToSystemTimeA(NULL, NULL, 0); ```
Hi,
It looks like your patch introduced the new failures shown below. Please investigate and fix them before resubmitting your patch. If they are not new, fixing them anyway would help a lot. Otherwise please ask for the known failures list to be updated.
The tests also ran into some preexisting test failures. If you know how to fix them that would be helpful. See the TestBot job for the details:
The full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=128720
Your paranoid android.
=== debian11 (32 bit report) ===
wininet: internet.c:954: Test failed: Test 11: Got unexpected system time. internet.c:965: Test failed: Test 11: Got unexpected system time. internet.c:954: Test failed: Test 12: Got unexpected system time. internet.c:965: Test failed: Test 12: Got unexpected system time. internet.c:954: Test failed: Test 13: Got unexpected system time. internet.c:965: Test failed: Test 13: Got unexpected system time.
=== debian11 (32 bit ar:MA report) ===
wininet: internet.c:954: Test failed: Test 11: Got unexpected system time. internet.c:965: Test failed: Test 11: Got unexpected system time. internet.c:954: Test failed: Test 12: Got unexpected system time. internet.c:965: Test failed: Test 12: Got unexpected system time. internet.c:954: Test failed: Test 13: Got unexpected system time. internet.c:965: Test failed: Test 13: Got unexpected system time.
=== debian11 (32 bit de report) ===
wininet: internet.c:954: Test failed: Test 11: Got unexpected system time. internet.c:965: Test failed: Test 11: Got unexpected system time. internet.c:954: Test failed: Test 12: Got unexpected system time. internet.c:965: Test failed: Test 12: Got unexpected system time. internet.c:954: Test failed: Test 13: Got unexpected system time. internet.c:965: Test failed: Test 13: Got unexpected system time.
=== debian11 (32 bit fr report) ===
wininet: internet.c:954: Test failed: Test 11: Got unexpected system time. internet.c:965: Test failed: Test 11: Got unexpected system time. internet.c:954: Test failed: Test 12: Got unexpected system time. internet.c:965: Test failed: Test 12: Got unexpected system time. internet.c:954: Test failed: Test 13: Got unexpected system time. internet.c:965: Test failed: Test 13: Got unexpected system time.
=== debian11 (32 bit he:IL report) ===
wininet: internet.c:954: Test failed: Test 11: Got unexpected system time. internet.c:965: Test failed: Test 11: Got unexpected system time. internet.c:954: Test failed: Test 12: Got unexpected system time. internet.c:965: Test failed: Test 12: Got unexpected system time. internet.c:954: Test failed: Test 13: Got unexpected system time. internet.c:965: Test failed: Test 13: Got unexpected system time.
=== debian11 (32 bit hi:IN report) ===
wininet: internet.c:954: Test failed: Test 11: Got unexpected system time. internet.c:965: Test failed: Test 11: Got unexpected system time. internet.c:954: Test failed: Test 12: Got unexpected system time. internet.c:965: Test failed: Test 12: Got unexpected system time. internet.c:954: Test failed: Test 13: Got unexpected system time. internet.c:965: Test failed: Test 13: Got unexpected system time.
=== debian11 (32 bit ja:JP report) ===
wininet: internet.c:954: Test failed: Test 11: Got unexpected system time. internet.c:965: Test failed: Test 11: Got unexpected system time. internet.c:954: Test failed: Test 12: Got unexpected system time. internet.c:965: Test failed: Test 12: Got unexpected system time. internet.c:954: Test failed: Test 13: Got unexpected system time. internet.c:965: Test failed: Test 13: Got unexpected system time.
=== debian11 (32 bit zh:CN report) ===
wininet: internet.c:954: Test failed: Test 11: Got unexpected system time. internet.c:965: Test failed: Test 11: Got unexpected system time. internet.c:954: Test failed: Test 12: Got unexpected system time. internet.c:965: Test failed: Test 12: Got unexpected system time. internet.c:954: Test failed: Test 13: Got unexpected system time. internet.c:965: Test failed: Test 13: Got unexpected system time.
=== debian11b (32 bit WoW report) ===
wininet: internet.c:954: Test failed: Test 11: Got unexpected system time. internet.c:965: Test failed: Test 11: Got unexpected system time. internet.c:954: Test failed: Test 12: Got unexpected system time. internet.c:965: Test failed: Test 12: Got unexpected system time. internet.c:954: Test failed: Test 13: Got unexpected system time. internet.c:965: Test failed: Test 13: Got unexpected system time.
=== debian11b (64 bit WoW report) ===
wininet: internet.c:954: Test failed: Test 11: Got unexpected system time. internet.c:965: Test failed: Test 11: Got unexpected system time. internet.c:954: Test failed: Test 12: Got unexpected system time. internet.c:965: Test failed: Test 12: Got unexpected system time. internet.c:954: Test failed: Test 13: Got unexpected system time. internet.c:965: Test failed: Test 13: Got unexpected system time.