X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=uip%2Fmhlist.c;h=66f9d894a414211bb08f4ada0fd01cce42e0199d;hp=5eb0937c9b80231d6e93fbc1a2064fdf7a9dad64;hb=31dc797eb5178970d68962ca8939da3fd9a8efda;hpb=097c84b61603c4a4c5837f3dcc09c30a1e751702 diff --git a/uip/mhlist.c b/uip/mhlist.c index 5eb0937..66f9d89 100644 --- a/uip/mhlist.c +++ b/uip/mhlist.c @@ -9,56 +9,42 @@ #include #include #include -#include #include #include -#include #include #include #include #include #include -#ifdef HAVE_SYS_WAIT_H -# include -#endif - static struct swit switches[] = { -#define CHECKSW 0 - { "check", 0 }, -#define NCHECKSW 1 - { "nocheck", 0 }, -#define HEADSW 2 +#define HEADSW 0 { "headers", 0 }, -#define NHEADSW 3 +#define NHEADSW 1 { "noheaders", 0 }, -#define SIZESW 4 +#define SIZESW 2 { "realsize", 0 }, -#define NSIZESW 5 +#define NSIZESW 3 { "norealsize", 0 }, -#define VERBSW 6 +#define VERBSW 4 { "verbose", 0 }, -#define NVERBSW 7 +#define NVERBSW 5 { "noverbose", 0 }, -#define FILESW 8 /* interface from show */ +#define FILESW 6 /* interface from show */ { "file file", 0 }, -#define PARTSW 9 +#define PARTSW 7 { "part number", 0 }, -#define TYPESW 10 +#define TYPESW 8 { "type content", 0 }, -#define RCACHESW 11 +#define RCACHESW 9 { "rcache policy", 0 }, -#define WCACHESW 12 +#define WCACHESW 10 { "wcache policy", 0 }, -#define VERSIONSW 13 +#define VERSIONSW 11 { "version", 0 }, -#define HELPSW 14 +#define HELPSW 12 { "help", 0 }, - -/* -** switches for debugging -*/ -#define DEBUGSW 15 +#define DEBUGSW 13 { "debug", -5 }, { NULL, 0 } }; @@ -111,7 +97,7 @@ void freects_done(int) NORETURN; /* ** static prototypes */ -static RETSIGTYPE pipeser(int); +static void pipeser(int); int @@ -178,13 +164,6 @@ do_cache: } continue; - case CHECKSW: - checksw++; - continue; - case NCHECKSW: - checksw = 0; - continue; - case HEADSW: headsw = 1; continue; @@ -219,8 +198,9 @@ do_cache: case FILESW: if (!(cp = *argp++) || (*cp == '-' && cp[1])) - adios(NULL, "missing argument to %s", argp[-2]); - file = *cp == '-' ? cp : path(cp, TFILE); + adios(NULL, "missing argument to %s", + argp[-2]); + file = *cp == '-' ? cp : getcpy(expanddir(cp)); continue; case VERBSW: @@ -238,7 +218,7 @@ do_cache: if (folder) adios(NULL, "only one folder at a time!"); else - folder = pluspath(cp); + folder = getcpy(expandfol(cp)); } else app_msgarg(&msgs, cp); } @@ -256,7 +236,7 @@ do_cache: /* Check for private cache location */ if (!(cache_private = context_find(nmhprivcache))) cache_private = ".cache"; - cache_private = getcpy(m_maildir(cache_private)); + cache_private = getcpy(toabsdir(cache_private)); /* ** Check for storage directory. If specified, @@ -266,10 +246,7 @@ do_cache: if ((cp = context_find(nmhstorage)) && *cp) tmp = concat(cp, "/", invo_name, NULL); else - tmp = add(m_maildir(invo_name), NULL); - - if (!context_find("path")) - free(path("./", TFOLDER)); + tmp = getcpy(toabsdir(invo_name)); if (file && msgs.size) adios(NULL, "cannot specify msg and file at same time!"); @@ -282,17 +259,17 @@ do_cache: adios(NULL, "out of memory"); ctp = cts; - if ((ct = parse_mime(file))); + if ((ct = parse_mime(file))) *ctp++ = ct; } else { /* ** message(s) are coming from a folder */ if (!msgs.size) - app_msgarg(&msgs, "cur"); + app_msgarg(&msgs, seq_cur); if (!folder) - folder = getfolder(FCUR); - maildir = m_maildir(folder); + folder = getcurfol(); + maildir = toabsdir(folder); if (chdir(maildir) == NOTOK) adios(maildir, "unable to change directory to"); @@ -363,7 +340,7 @@ do_cache: /* If reading from a folder, do some updating */ if (mp) { - context_replace(pfolder, folder); /* update current folder */ + context_replace(curfolder, folder); /* update current folder */ seq_setcur(mp, mp->hghsel); /* update current message */ seq_save(mp); /* synchronize sequences */ context_save(); /* save the context file */ @@ -374,7 +351,7 @@ do_cache: } -static RETSIGTYPE +static void pipeser(int i) { if (i == SIGQUIT) {