mirror of
https://github.com/libsdl-org/SDL.git
synced 2026-06-07 15:10:49 +00:00
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:
parent
b58e6d7274
commit
bc9c86bcc2
1 changed files with 9 additions and 12 deletions
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue