From fde74494c925cc5323d201972722aed6f4849506 Mon Sep 17 00:00:00 2001 From: Timo Wischer Date: Mon, 30 Jul 2018 16:04:59 +0200 Subject: Avoid NULL dereference in JACK backend on startup failure Without this, there is a segmentation fault when the initialization of Jalv fails and it exits before the backend was initialized. --- src/jack.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/jack.c b/src/jack.c index 7c9f387..337b3dd 100644 --- a/src/jack.c +++ b/src/jack.c @@ -388,9 +388,11 @@ jalv_backend_init(Jalv* jalv) void jalv_backend_close(Jalv* jalv) { - jack_client_close(jalv->backend->client); - free(jalv->backend); - jalv->backend = NULL; + if (!jalv->backend) { + jack_client_close(jalv->backend->client); + free(jalv->backend); + jalv->backend = NULL; + } } void @@ -402,7 +404,9 @@ jalv_backend_activate(Jalv* jalv) void jalv_backend_deactivate(Jalv* jalv) { - jack_deactivate(jalv->backend->client); + if (jalv->backend) { + jack_deactivate(jalv->backend->client); + } } void -- cgit v1.2.1