Hi,
Il 17/05/21 14:41, Francois Gouget ha scritto:
On Mon, 17 May 2021, Giovanni Mascellani wrote: [...]
/* recently added time zones may not have MUI strings */
todo_wine ok((status == ERROR_SUCCESS && *name) ||
broken(status == ERROR_RESOURCE_TYPE_NOT_FOUND) /* Win10
1809 32-bit */ ||
broken(status == ERROR_MUI_FILE_NOT_FOUND) /* Win10 1809
64-bit */,
"status %d MUI_Display %s\n", status,
wine_dbgstr_w(name));
Why don't you check for *name after the first two calls to pRegLoadMUIStringW?
It would be redundant with the memcmp() that follows? (or I misunderstood)
status = pRegLoadMUIStringW(subkey, L"MUI_Std", name, size, &size, 0, sysdir); ok(status == ERROR_SUCCESS, "status %d MUI_Std %s\n", status, wine_dbgstr_w(name)); } ok(!memcmp(&dtzi.StandardName, name, size), "expected %s, got %s\n", wine_dbgstr_w(name), wine_dbgstr_w(dtzi.StandardName));
Unless I am mistaken, memcmp() checks that dtzi.StandardName and name are the same string (or, technically, that name is a prefix of dtzi.StandardName, which might be longer). They could be both empty strings.
BTW, this is not really a big problem in practice. I asked just because I saw that in the case of Display you did this check.
Thanks, Giovanni.