config.c: fix brace detection at end of file

This commit is contained in:
Ian Fan 2019-01-10 10:59:07 +00:00
parent d06782c5e7
commit 00f8d0209f

View file

@ -601,6 +601,7 @@ static ssize_t getline_with_cont(char **lineptr, size_t *line_size, FILE *file)
} }
static int detect_brace(FILE *file) { static int detect_brace(FILE *file) {
int ret = 0;
int lines = 0; int lines = 0;
long pos = ftell(file); long pos = ftell(file);
char *line = NULL; char *line = NULL;
@ -609,15 +610,15 @@ static int detect_brace(FILE *file) {
lines++; lines++;
strip_whitespace(line); strip_whitespace(line);
if (*line) { if (*line) {
if (strcmp(line, "{") != 0) { if (strcmp(line, "{") == 0) {
fseek(file, pos, SEEK_SET); ret = lines;
lines = 0;
} }
break; break;
} }
} }
free(line); free(line);
return lines; fseek(file, pos, SEEK_SET);
return ret;
} }
static char *expand_line(const char *block, const char *line, bool add_brace) { static char *expand_line(const char *block, const char *line, bool add_brace) {