=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/Attic/cmd-set-hook.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -r1.5 -r1.6 --- src/usr.bin/tmux/Attic/cmd-set-hook.c 2015/12/14 00:31:54 1.5 +++ src/usr.bin/tmux/Attic/cmd-set-hook.c 2016/05/12 13:21:56 1.6 @@ -1,4 +1,4 @@ -/* $OpenBSD: cmd-set-hook.c,v 1.5 2015/12/14 00:31:54 nicm Exp $ */ +/* $OpenBSD: cmd-set-hook.c,v 1.6 2016/05/12 13:21:56 nicm Exp $ */ /* * Copyright (c) 2012 Thomas Adam @@ -36,7 +36,7 @@ .args = { "gt:u", 1, 2 }, .usage = "[-gu] " CMD_TARGET_SESSION_USAGE " hook-name [command]", - .tflag = CMD_SESSION, + .tflag = CMD_SESSION_CANFAIL, .flags = 0, .exec = cmd_set_hook_exec @@ -63,12 +63,21 @@ struct hooks *hooks; struct hook *hook; char *cause, *tmp; - const char *name, *cmd; + const char *name, *cmd, *target; if (args_has(args, 'g')) hooks = global_hooks; - else + else { + if (cmdq->state.tflag.s == NULL) { + target = args_get(args, 't'); + if (target != NULL) + cmdq_error(cmdq, "no such session: %s", target); + else + cmdq_error(cmdq, "no current session"); + return (CMD_RETURN_ERROR); + } hooks = cmdq->state.tflag.s->hooks; + } if (self->entry == &cmd_show_hooks_entry) { hook = hooks_first(hooks);