]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
Fix segmentation fault in early shutdown from `quit()` in config
authorOndřej Surý <ondrej@sury.org>
Tue, 9 Aug 2016 09:03:16 +0000 (11:03 +0200)
committerOndřej Surý <ondrej@sury.org>
Tue, 9 Aug 2016 09:03:16 +0000 (11:03 +0200)
daemon/engine.c

index 4f7a69f5c87f9a332db7c4f2aa8f5f64dc5d56a8..ad852ba601a9313e760fb4d554bc1ececd1faead 100644 (file)
@@ -725,8 +725,13 @@ int engine_start(struct engine *engine, const char *config_path)
 
 void engine_stop(struct engine *engine)
 {
-       uv_timer_stop(engine->updater);
-       uv_close((uv_handle_t *)engine->updater, (uv_close_cb) free);
+       if (!engine) {
+               return;
+       }
+       if (engine->updater) {
+               uv_timer_stop(engine->updater);
+               uv_close((uv_handle_t *)engine->updater, (uv_close_cb) free);
+       }
        uv_stop(uv_default_loop());
 }