From d52fa6bf4da9cb9b2039750adca97f91ec503cab Mon Sep 17 00:00:00 2001 From: Christian Neukirchen Date: Wed, 20 Jul 2016 23:10:35 +0200 Subject: [PATCH] mshow: don't extract to absolute paths duh. --- mshow.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/mshow.c b/mshow.c index cd8bbef..7dc6174 100644 --- a/mshow.c +++ b/mshow.c @@ -308,10 +308,18 @@ static int extract_argc; static char **extract_argv; static int extract_stdout; + +static const char * +basenam(const char *s) +{ + char *r = strrchr(s, '/'); + return r ? r + 1 : s; +} + static int writefile(char *name, char *buf, ssize_t len) { - int fd = open(name, O_CREAT | O_EXCL | O_WRONLY, 0666); + int fd = open(basenam(name), O_CREAT | O_EXCL | O_WRONLY, 0666); if (fd == -1) { perror("open"); return -1;