diff options
author | Dave Davenport <qball@gmpclient.org> | 2016-06-21 22:40:42 +0200 |
---|---|---|
committer | Dave Davenport <qball@gmpclient.org> | 2016-06-21 22:40:42 +0200 |
commit | 77a0800ccf6e76b0c843e5f01eba6d447dd57463 (patch) | |
tree | 81db7faa4351421c0ad040d42fa9088b74456d7b /source/dialogs/dmenu.c | |
parent | 5fb6ee1383ff21cfc6c46cc0514c6c86dd297c03 (diff) |
Copy memory instead of mixing malloc and g_malloc'ed memories (and freeing them all with g_free)
Diffstat (limited to 'source/dialogs/dmenu.c')
-rw-r--r-- | source/dialogs/dmenu.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/source/dialogs/dmenu.c b/source/dialogs/dmenu.c index c7b016aa..887e6a42 100644 --- a/source/dialogs/dmenu.c +++ b/source/dialogs/dmenu.c @@ -92,11 +92,9 @@ static char **get_dmenu ( DmenuModePrivateData *pd, FILE *fd, unsigned int *leng data[l - 1] = '\0'; l--; } - data = rofi_force_utf8 ( data ); + char *utfstr = rofi_force_utf8 ( data, l ); - retv[( *length )] = data; - data = NULL; - data_l = 0; + retv[( *length )] = utfstr; ( *length )++; // Stop when we hit 2³¹ entries. @@ -529,6 +527,8 @@ int dmenu_switcher_dialog ( void ) } } tokenize_free ( tokens ); + dmenu_mode_free ( &dmenu_mode ); + g_free ( input ); return TRUE; } // TODO remove |