X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/5dd6771b28c257af405d7248639ed0e3bcdce38b..f4bef2e06b4284481b3f900e853d1667f52eb37b:/sbr/showfile.c diff --git a/sbr/showfile.c b/sbr/showfile.c index 59ae7952..369c953b 100644 --- a/sbr/showfile.c +++ b/sbr/showfile.c @@ -15,7 +15,7 @@ showfile (char **arg, char *file) { pid_t pid; int isdraft, vecp; - char *vec[MAXARGS]; + char **vec, *program; context_save(); /* save the context file */ fflush(stdout); @@ -28,7 +28,7 @@ showfile (char **arg, char *file) if (!strcmp (r1bindex (lproc, '/'), "mhl")) lproc = mhlproc; - switch (pid = vfork()) { + switch (pid = fork()) { case -1: /* fork error */ advise ("fork", "unable to"); @@ -36,8 +36,7 @@ showfile (char **arg, char *file) case 0: /* child */ - vecp = 0; - vec[vecp++] = r1bindex (lproc, '/'); + vec = argsplit(lproc, &program, &vecp); isdraft = 1; if (arg) { while (*arg) { @@ -53,7 +52,7 @@ showfile (char **arg, char *file) } vec[vecp] = NULL; - execvp (lproc, vec); + execvp (program, vec); fprintf (stderr, "unable to exec "); perror (lproc); _exit (-1);