Esme Povirk (@madewokherd) commented about dlls/windowscodecs/metadataquery.c:
+ + if (schemas[i].vt != VT_EMPTY) + hr = get_query_item_name(&schemas[i], &schema_name); + if (SUCCEEDED(hr)) + hr = get_query_item_name(&ids[i], &id_name); + + if (SUCCEEDED(hr)) + { + size = 4; + if (schema_name) + size += wcslen(schema_name); + if (id_name) + size += wcslen(id_name); + + if (!(strings[i] = CoTaskMemAlloc(size * sizeof(WCHAR)))) + hr = E_OUTOFMEMORY; Seems like we don't actually do anything with errors in this loop. It won't crash or return a failure to the caller, but any item that fails will have `strings[i]` uninitialized or NULL.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/7407#note_96484