Rémi Bernon (@rbernon) commented about dlls/windows.media.speech/vosk.c:
+ + if (strstr(dir_name, vosk_model_identifier_small)) + dir_name += strlen(vosk_model_identifier_small); + else if (strstr(dir_name, vosk_model_identifier)) + dir_name += strlen(vosk_model_identifier); + + if (strstr(dir_name, lang_region) != dir_name && strstr(dir_name, lang) != dir_name) + continue; + + path = malloc(strlen(folder) + 1 /* '/' */ + strlen(dirent->d_name) + 1); + sprintf(path, "%s/%s", folder, dirent->d_name); + + TRACE("Trying to load Vosk model %s.\n", debugstr_a(path)); + + *model = pvosk_model_new(path); + free(path); This feels a bit too fuzzy. 1) Do we need to iterate over the directory? 2) Is strstr really what we want here?
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/2091#note_22805