Zebediah Figura (@zfigura) commented about dlls/kernelbase/path.c:
+ DWORD colon_pos = 0, pos = 0; + wchar_t *helper_str = NULL; + PWSTR save_str = translatedUrl;
- FIXME("%s, %p, %ld stub\n", wine_dbgstr_w(url), translatedUrl, maxChars); + const WCHAR *url_scheme[] = { L"", L"ftp:", L"https:", L"gopher:", L"mailto:", L"news:", + L"nntp:", L"telnet:", L"wais:", L"file:", L"mk:", + L"http:", L"shell:", L"snews:", L"local:", + L"javascript:", L"vbscript:", L"about:", L"res:", + L"ms-shell-rooted:", L"ms-shell-idlist:", L"hcp:"}; + + const WCHAR *url_scheme_short[] = { L"", L"ftp", L"https", L"gopher", L"mailto", L"snews", + L"nntp", L"telnet", L"wais", L"file", L"mk", + L"http", L"ms-shell-rooted", L"news", L"local", + L"javascript", L"vbscript", L"about", L"res", + L"ms-shell-idlist", L"shell", L"hcp"}; These are constant arrays, so should be "static const WCHAR *const".
Also, it seems that one array is the same as the other without the final colon; can we avoid defining two arrays? -- https://gitlab.winehq.org/wine/wine/-/merge_requests/1825#note_19806