]> diplodocus.org Git - nmh/blobdiff - sbr/showfile.c
It looks like the first test fails on Solaris because it
[nmh] / sbr / showfile.c
index 59ae7952b2b6f2cc61858b7231d9962492691845..369c953b6372dfd4e5e9663d8888b60ad8bff2a0 100644 (file)
@@ -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);