Dialog: Add suffix to filters all the time

For some obscure reason I can't remember, I had made it so the suffix would be added only if the filter list was empty. That isn't the expected behavior and caused a mishandling of memory on Windows, which requires a two-null-bytes suffix.
This commit is contained in:
Semphris
2024-12-17 22:52:26 -05:00
committed by Sam Lantinga
parent b58e6d7274
commit bc9c86bcc2

View File

@@ -78,22 +78,19 @@ char *convert_filters(const SDL_DialogFileFilter *filters, int nfilters,
SDL_free(converted);
}
// If the filter list is empty, put the suffix
if (!filters->name || !filters->pattern) {
new_length = SDL_strlen(combined) + SDL_strlen(suffix) + 1;
new_length = SDL_strlen(combined) + SDL_strlen(suffix) + 1;
new_combined = (char *)SDL_realloc(combined, new_length);
new_combined = (char *)SDL_realloc(combined, new_length);
if (!new_combined) {
SDL_free(combined);
return NULL;
}
combined = new_combined;
SDL_strlcat(combined, suffix, new_length);
if (!new_combined) {
SDL_free(combined);
return NULL;
}
combined = new_combined;
SDL_strlcat(combined, suffix, new_length);
return combined;
}