mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-01-12 07:26:15 +01:00
Add NULL to end of g_filename_complete_get_completions() return value
g_filename_complete_get_completions() return value is meant to be a g_strfreev-compatible array i.e. NULL-terminated. However, pointer arrays aren't automagically NULL-terminated. This fixes bug 586868
This commit is contained in:
parent
657d0ad918
commit
e7a258692c
@ -470,7 +470,7 @@ g_filename_completer_get_completion_suffix (GFilenameCompleter *completer,
|
||||
**/
|
||||
char **
|
||||
g_filename_completer_get_completions (GFilenameCompleter *completer,
|
||||
const char *initial_text)
|
||||
const char *initial_text)
|
||||
{
|
||||
GList *possible_matches, *l;
|
||||
char *prefix;
|
||||
@ -486,14 +486,16 @@ g_filename_completer_get_completions (GFilenameCompleter *completer,
|
||||
for (l = possible_matches; l != NULL; l = l->next)
|
||||
{
|
||||
possible_match = l->data;
|
||||
|
||||
|
||||
if (g_str_has_prefix (possible_match, prefix))
|
||||
g_ptr_array_add (res,
|
||||
g_strconcat (initial_text, possible_match + strlen (prefix), NULL));
|
||||
}
|
||||
|
||||
g_free (prefix);
|
||||
|
||||
|
||||
g_ptr_array_add (res, NULL);
|
||||
|
||||
return (char**)g_ptr_array_free (res, FALSE);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user