From b72f727b9bef3422a45c36998e77c3dedb95e70c Mon Sep 17 00:00:00 2001 From: Markus Armbruster Date: Fri, 9 Jan 2015 16:12:29 +0100 Subject: [PATCH] retreat lretreat: Fix crash when getstarg() fails Broken in commit 40ec33b. Mitigating factor: can only happen when the player gives an empty argument, e.g. retreat 0 "". Signed-off-by: Markus Armbruster --- src/lib/commands/retr.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/lib/commands/retr.c b/src/lib/commands/retr.c index 39c14d651..326419db3 100644 --- a/src/lib/commands/retr.c +++ b/src/lib/commands/retr.c @@ -87,6 +87,8 @@ retreat(int type) nunits = 0; if (player->argp[2] != NULL) { pq = getstarg(player->argp[2], "Retreat path? ", buf1); + if (!pq) + return RET_SYN; for (i = 0; i < RET_LEN - 1 && pq[i]; i++) { if (chkdir(pq[i], DIR_STOP, DIR_LAST) < 0) { pr("'%c' is not a valid direction...\n", pq[i]); -- 2.43.0