From cb1db41502bb3264179bd85b553e3ed32430a86a Mon Sep 17 00:00:00 2001 From: nicm Date: Sat, 22 Apr 2017 06:27:15 +0000 Subject: [PATCH] Fix if-shell without a client (so in the config file). Reported by Theo Buehler. --- usr.bin/tmux/cmd-if-shell.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/usr.bin/tmux/cmd-if-shell.c b/usr.bin/tmux/cmd-if-shell.c index eec73e572d9..1c5696dc726 100644 --- a/usr.bin/tmux/cmd-if-shell.c +++ b/usr.bin/tmux/cmd-if-shell.c @@ -1,4 +1,4 @@ -/* $OpenBSD: cmd-if-shell.c,v 1.53 2017/04/21 14:01:19 nicm Exp $ */ +/* $OpenBSD: cmd-if-shell.c,v 1.54 2017/04/22 06:27:15 nicm Exp $ */ /* * Copyright (c) 2009 Tiago Cunha @@ -120,7 +120,8 @@ cmd_if_shell_exec(struct cmd *self, struct cmdq_item *item) cdata->cmd_else = NULL; cdata->client = item->client; - cdata->client->references++; + if (cdata->client != NULL) + cdata->client->references++; if (!args_has(args, 'b')) cdata->item = item; @@ -193,7 +194,8 @@ cmd_if_shell_free(void *data) { struct cmd_if_shell_data *cdata = data; - server_client_unref(cdata->client); + if (cdata->client != NULL) + server_client_unref(cdata->client); free(cdata->cmd_else); free(cdata->cmd_if); -- 2.20.1