diff options
Diffstat (limited to 'config.c')
-rw-r--r-- | config.c | 11 |
1 files changed, 5 insertions, 6 deletions
@@ -49,11 +49,11 @@ static tern_node * parse_config_int(char **state, int started, int *line) curline = strip_ws(curline); int len = strlen(curline); if (!len) { - *line = *line + 1; + (*line)++; continue; } if (curline[0] == '#') { - *line = *line + 1; + (*line)++; continue; } if (curline[0] == '}') { @@ -67,7 +67,7 @@ static tern_node * parse_config_int(char **state, int started, int *line) if (*end == '{') { *end = 0; curline = strip_ws(curline); - *line = *line + 1; + (*line)++; head = tern_insert_node(head, curline, parse_config_int(state, 1, line)); } else { char * val = strip_ws(split_keyval(curline)); @@ -77,7 +77,7 @@ static tern_node * parse_config_int(char **state, int started, int *line) } else { fprintf(stderr, "Key %s is missing a value on line %d\n", key, *line); } - *line = *line + 1; + (*line)++; } } return head; @@ -174,11 +174,10 @@ tern_node *parse_config_file(char *config_path) if (!config_size) { goto config_empty; } - char * config_data = malloc(config_size+1); + char *config_data = calloc(config_size + 1, 1); if (fread(config_data, 1, config_size, config_file) != config_size) { goto config_read_fail; } - config_data[config_size] = '\0'; ret = parse_config(config_data); config_read_fail: |