diff options
author | Dave Davenport <qball@gmpclient.org> | 2021-01-17 16:09:58 +0100 |
---|---|---|
committer | Dave Davenport <qball@gmpclient.org> | 2021-01-17 16:09:58 +0100 |
commit | 519b2a22eb439743c027de128fabfece6d8a2df7 (patch) | |
tree | fa0380cc003aa276e3bc6e0b4da86582565bf648 | |
parent | ca86eec8020ef5011cd7962358ce3425d9e6f12c (diff) |
Add check for input == NULL.
-rw-r--r-- | source/helper.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/source/helper.c b/source/helper.c index 1eb2b902..07441732 100644 --- a/source/helper.c +++ b/source/helper.c @@ -1138,13 +1138,17 @@ char *helper_get_theme_path ( const char *file ) return filename; } -static void parse_pair ( char *input, rofi_range_pair *item ) +static gboolean parse_pair ( char *input, rofi_range_pair *item ) { // Skip leading blanks. while ( input != NULL && isblank ( *input ) ) { ++input; } + if ( input == NULL ) { + return FALSE; + } + const char *sep[] = { "-", ":" }; int pythonic = ( strchr ( input, ':' ) || input[0] == '-' ) ? 1 : 0; int index = 0; @@ -1166,6 +1170,7 @@ static void parse_pair ( char *input, rofi_range_pair *item ) --item->stop; } } + return TRUE; } void parse_ranges ( char *input, rofi_range_pair **list, unsigned int *length ) { @@ -1178,9 +1183,9 @@ void parse_ranges ( char *input, rofi_range_pair **list, unsigned int *length ) // Make space. *list = g_realloc ( ( *list ), ( ( *length ) + 1 ) * sizeof ( struct rofi_range_pair ) ); // Parse a single pair. - parse_pair ( token, &( ( *list )[*length] ) ); - - ( *length )++; + if ( parse_pair ( token, &( ( *list )[*length] ) ) ) { + ( *length )++; + } } } /** |