X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/28c3595a77a8c942bee1057085776dad0b3d53f4..bfc6b93af:/uip/mhn.c diff --git a/uip/mhn.c b/uip/mhn.c index c0b7e781..a3f10305 100644 --- a/uip/mhn.c +++ b/uip/mhn.c @@ -29,12 +29,8 @@ X("noheaders", 0, NHEADSW) \ X("list", 0, LISTSW) \ X("nolist", 0, NLISTSW) \ - X("pause", 0, PAUSESW) \ - X("nopause", 0, NPAUSESW) \ X("realsize", 0, SIZESW) \ X("norealsize", 0, NSIZESW) \ - X("serialonly", 0, SERIALSW) \ - X("noserialonly", 0, NSERIALSW) \ X("show", 0, SHOWSW) \ X("noshow", 0, NSHOWSW) \ X("store", 0, STORESW) \ @@ -65,8 +61,8 @@ */ \ X("build", -5, BUILDSW) \ X("nobuild", -7, NBUILDSW) \ - X("rfc934mode", -10, RFC934SW) \ - X("norfc934mode", -12, NRFC934SW) \ + X("rfc934mode", 0, RFC934SW) \ + X("norfc934mode", 0, NRFC934SW) \ #define X(sw, minchars, id) id, DEFINE_SWITCH_ENUM(MHN); @@ -84,8 +80,6 @@ extern char *cache_public; extern char *cache_private; /* mhshowsbr.c */ -extern int pausesw; -extern int serialsw; extern char *progsw; extern int nolist; extern int nomore; /* flags for moreproc/header display */ @@ -121,19 +115,10 @@ static int storesw = 0; CT parse_mime (char *); /* mhmisc.c */ -int part_ok (CT, int); +int part_ok (CT); int type_ok (CT, int); void flush_errors (void); -/* mhshowsbr.c */ -void show_all_messages (CT *); - -/* mhstoresbr.c */ -typedef struct mhstoreinfo *mhstoreinfo_t; -mhstoreinfo_t mhstoreinfo_create(CT *, char *, const char *, int, int); -void mhstoreinfo_free(mhstoreinfo_t); -void store_all_messages (mhstoreinfo_t); - /* mhcachesbr.c */ void cache_all_messages (CT *); @@ -244,20 +229,6 @@ do_cache: listsw = 0; continue; - case PAUSESW: - pausesw = 1; - continue; - case NPAUSESW: - pausesw = 0; - continue; - - case SERIALSW: - serialsw = 1; - continue; - case NSERIALSW: - serialsw = 0; - continue; - case SHOWSW: showsw = 1; continue; @@ -306,8 +277,7 @@ do_cache: case FORMSW: if (!(cp = *argp++) || *cp == '-') adios (NULL, "missing argument to %s", argp[-2]); - if (formsw) - free (formsw); + mh_xfree(formsw); formsw = getcpy (etcpath (cp)); continue; @@ -469,8 +439,7 @@ do_cache: * check if message is coming from file */ if (file) { - if (!(cts = (CT *) calloc ((size_t) 2, sizeof(*cts)))) - adios (NULL, "out of memory"); + cts = mh_xcalloc(2, sizeof *cts); ctp = cts; if ((ct = parse_mime (file))) @@ -502,8 +471,7 @@ do_cache: done (1); seq_setprev (mp); /* set the previous-sequence */ - if (!(cts = (CT *) calloc ((size_t) (mp->numsel + 1), sizeof(*cts)))) - adios (NULL, "out of memory"); + cts = mh_xcalloc(mp->numsel + 1, sizeof *cts); ctp = cts; for (msgnum = mp->lowsel; msgnum <= mp->hghsel; msgnum++) { @@ -565,6 +533,14 @@ do_cache: mhstoreinfo_free (info); } + /* If reading from a folder, do some updating */ + if (mp) { + context_replace (pfolder, folder);/* update current folder */ + seq_setcur (mp, mp->hghsel); /* update current message */ + seq_save (mp); /* synchronize sequences */ + context_save (); /* save the context file */ + } + /* * Cache the message content */ @@ -575,7 +551,7 @@ do_cache: * Show the message content */ if (showsw) - show_all_messages (cts); + show_all_messages (cts, 0, 0, 0); /* Now free all the structures for the content */ for (ctp = cts; *ctp; ctp++) @@ -584,14 +560,6 @@ do_cache: free (cts); cts = NULL; - /* If reading from a folder, do some updating */ - if (mp) { - context_replace (pfolder, folder);/* update current folder */ - seq_setcur (mp, mp->hghsel); /* update current message */ - seq_save (mp); /* synchronize sequences */ - context_save (); /* save the context file */ - } - done (0); return 1; }