X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=uip%2Fshow.c;h=b19f7627092d6ba009aacb8f3ff5028f9be14acf;hp=dc6d24e625b3ce64c7ec5c5d84d0b4b751ab3da8;hb=240013872c392fe644bd4f79382d9f5314b4ea60;hpb=714b5c530ece27ea2835a313013f5b770163403c diff --git a/uip/show.c b/uip/show.c index dc6d24e..b19f762 100644 --- a/uip/show.c +++ b/uip/show.c @@ -71,7 +71,7 @@ main(int argc, char **argv) #ifdef LOCALE setlocale(LC_ALL, ""); #endif - invo_name = r1bindex(argv[0], '/'); + invo_name = mhbasename(argv[0]); /* read user profile/context */ context_read(); @@ -301,7 +301,7 @@ go_to_it: ; ** then add "-show" option. Add "-file" if showing ** file. */ - if (strcmp(r1bindex(proc, '/'), "mhn") == 0) { + if (strcmp(mhbasename(proc), "mhn") == 0) { if (file) { vec[vecp] = vec[vecp - 1]; vec[vecp - 1] = "-file"; @@ -312,7 +312,7 @@ go_to_it: ; } /* If the "proc" is "mhshow", add "-file" if showing file. */ - if (strcmp(r1bindex(proc, '/'), "mhshow") == 0 && file ) { + if (strcmp(mhbasename(proc), "mhshow") == 0 && file ) { vec[vecp] = vec[vecp - 1]; vec[vecp - 1] = "-file"; vec[++vecp] = NULL; @@ -322,7 +322,7 @@ go_to_it: ; ** If "proc" is mhl, then run it internally ** rather than exec'ing it. */ - if (strcmp(r1bindex(proc, '/'), "mhl") == 0) { + if (strcmp(mhbasename(proc), "mhl") == 0) { vec[0] = "mhl"; mhl(vecp, vec); done(0); @@ -333,19 +333,19 @@ go_to_it: ; ** add the path to the message names. Currently, we are just ** checking for mhn here, since we've already taken care of mhl. */ - if (!strcmp(r1bindex(proc, '/'), "mhl") + if (!strcmp(mhbasename(proc), "mhl") && !file && chdir(maildir = concat(m_maildir(""), "/", NULL)) != NOTOK) { mp->foldpath = concat(mp->foldpath, "/", NULL); - cp = ssequal(maildir, mp->foldpath) + cp = isprefix(maildir, mp->foldpath) ? mp->foldpath + strlen(maildir) : mp->foldpath; for (msgnum = procp; msgnum < vecp; msgnum++) vec[msgnum] = concat(cp, vec[msgnum], NULL); } - vec[0] = r1bindex(proc, '/'); + vec[0] = mhbasename(proc); execvp(proc, vec); adios(proc, "unable to exec"); return 0; /* dead code to satisfy the compiler */