From a2480cf868a9455dd3ebd8433992ed8369436c3c Mon Sep 17 00:00:00 2001 From: koekeishiya Date: Thu, 10 May 2018 17:01:40 +0200 Subject: code cleanup --- src/parse.c | 3 ++- src/parse.h | 2 +- src/skhd.c | 7 +++---- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/parse.c b/src/parse.c index 7bde2dc..bbdacfe 100644 --- a/src/parse.c +++ b/src/parse.c @@ -415,11 +415,12 @@ void parser_report_error(struct parser *parser, enum parse_error_type error_type parser->error = true; } -bool parser_init(struct parser *parser, char *file) +bool parser_init(struct parser *parser, struct table *mode_map, char *file) { memset(parser, 0, sizeof(struct parser)); char *buffer = read_file(file); if (buffer) { + parser->mode_map = mode_map; tokenizer_init(&parser->tokenizer, buffer); parser_advance(parser); return true; diff --git a/src/parse.h b/src/parse.h index 1c7719d..d3543b9 100644 --- a/src/parse.h +++ b/src/parse.h @@ -30,7 +30,7 @@ bool parser_eof(struct parser *parser); struct token parser_advance(struct parser *parser); bool parser_check(struct parser *parser, enum token_type type); bool parser_match(struct parser *parser, enum token_type type); -bool parser_init(struct parser *parser, char *file); +bool parser_init(struct parser *parser, struct table *mode_map, char *file); void parser_destroy(struct parser *parser); void parser_report_error(struct parser *parser, enum parse_error_type error_type, const char *format, ...); diff --git a/src/skhd.c b/src/skhd.c index ee8772c..fb224f8 100644 --- a/src/skhd.c +++ b/src/skhd.c @@ -44,6 +44,7 @@ extern bool CGSIsSecureEventInputSet(); internal unsigned major_version = 0; internal unsigned minor_version = 0; internal unsigned patch_version = 14; + internal struct mode *current_mode; internal struct table mode_map; internal char *config_file; @@ -71,15 +72,13 @@ internal void parse_config_helper(char *absolutepath) { struct parser parser; - if (parser_init(&parser, absolutepath)) { - parser.mode_map = &mode_map; + if (parser_init(&parser, &mode_map, absolutepath)) { parse_config(&parser); parser_destroy(&parser); - current_mode = table_find(&mode_map, "default"); } else { - current_mode = NULL; warn("skhd: could not open file '%s'\n", absolutepath); } + current_mode = table_find(&mode_map, "default"); } internal HOTLOADER_CALLBACK(config_handler) -- cgit v1.2.3