- if (is_selected (mp, msgnum) &&
- !(vec[vecp++] = strdup (m_name (msgnum))))
- adios (NULL, "strdup failed");
- }
- vec[vecp] = NULL;
-
- fflush (stdout);
- vec[0] = r1bindex (rmmproc, '/');
-
- switch (pid = vfork()) {
- case -1:
- advise ("fork", "unable to");
- return -1;
-
- case 0:
- execvp (rmmproc, vec);
- fprintf (stderr, "unable to exec ");
- perror (rmmproc);
- _exit (-1);
-
- default:
- return (pidwait (pid, -1));
- }
- }