X-Git-Url: http://git.madism.org/?p=apps%2Fmadmutt.git;a=blobdiff_plain;f=mh.c;h=8c9bbc7a049c21fe8204d3a6c0a95e03610d46b6;hp=47231ed2e1e9c5d966b0e72f0658617a738d0d05;hb=617e7d83d14e14e6a520a48e75437211b16c8834;hpb=2e401db31508cc9f7025eb1465e56d8c2e5a2544 diff --git a/mh.c b/mh.c index 47231ed..8c9bbc7 100644 --- a/mh.c +++ b/mh.c @@ -17,6 +17,8 @@ # include "config.h" #endif +#include + #include "mutt.h" #include "mx.h" #include "mh.h" @@ -27,7 +29,6 @@ #include "thread.h" #include "hcache.h" -#include "lib/mem.h" #include "lib/intl.h" #include "lib/str.h" #include "lib/debug.h" @@ -83,7 +84,7 @@ static void mhs_alloc (struct mh_sequences *mhs, int i) if (i > mhs->max || !mhs->flags) { newmax = i + 128; - mem_realloc (&mhs->flags, sizeof (mhs->flags[0]) * (newmax + 1)); + p_realloc(&mhs->flags, newmax + 1); for (j = mhs->max + 1; j <= newmax; j++) mhs->flags[j] = 0; @@ -93,7 +94,7 @@ static void mhs_alloc (struct mh_sequences *mhs, int i) static void mhs_free_sequences (struct mh_sequences *mhs) { - mem_free (&mhs->flags); + p_delete(&mhs->flags); } static short mhs_check (struct mh_sequences *mhs, int i) @@ -175,7 +176,7 @@ static void mh_read_sequences (struct mh_sequences *mhs, const char *path) } } - mem_free (&buff); + p_delete(&buff); safe_fclose (&fp); } @@ -216,7 +217,7 @@ static int mh_mkstemp (CONTEXT * dest, FILE ** fp, char **tgt) } if ((*fp = fdopen (fd, "w")) == NULL) { - mem_free (tgt); + p_delete(tgt); close (fd); unlink (path); return (-1); @@ -364,7 +365,7 @@ void mh_update_sequences (CONTEXT * ctx) unlink (tmpfname); } - mem_free (&tmpfname); + p_delete(&tmpfname); } static void mh_sequences_add_one (CONTEXT * ctx, int n, short unseen, @@ -416,7 +417,7 @@ static void mh_sequences_add_one (CONTEXT * ctx, int n, short unseen, } } safe_fclose (&ofp); - mem_free (&buff); + p_delete(&buff); if (!unseen_done && unseen) fprintf (nfp, "%s: %d\n", NONULL (MhUnseen), n); @@ -431,7 +432,7 @@ static void mh_sequences_add_one (CONTEXT * ctx, int n, short unseen, if (safe_rename (tmpfname, sequences) != 0) unlink (tmpfname); - mem_free (&tmpfname); + p_delete(&tmpfname); } static void mh_update_maildir (struct maildir *md, struct mh_sequences *mhs) @@ -462,11 +463,11 @@ static void maildir_free_entry (struct maildir **md) if (!md || !*md) return; - mem_free (&(*md)->canon_fname); + p_delete(&(*md)->canon_fname); if ((*md)->h) mutt_free_header (&(*md)->h); - mem_free (md); + p_delete(md); } static void maildir_free_maildir (struct maildir **md) @@ -527,7 +528,7 @@ static void maildir_parse_flags (HEADER * h, const char *path) } if (q == h->maildir_flags) - mem_free (&h->maildir_flags); + p_delete(&h->maildir_flags); else if (q) *q = '\0'; } @@ -644,7 +645,7 @@ static int maildir_parse_entry (CONTEXT * ctx, struct maildir ***last, else h->path = str_dup (fname); - entry = mem_calloc (sizeof (struct maildir), 1); + entry = p_new(struct maildir, 1); entry->h = h; entry->header_parsed = (ctx->magic == M_MH); #ifdef USE_INODESORT @@ -837,7 +838,7 @@ static struct maildir *maildir_sort_inode (struct maildir *list) } #endif /* USE_INODESORT */ -#if USE_HCACHE +#ifdef USE_HCACHE static size_t maildir_hcache_keylen (const char *fn) { const char *p = strchr (fn, ':'); @@ -856,7 +857,7 @@ void maildir_delayed_parsing (CONTEXT * ctx, struct maildir *md) char fn[_POSIX_PATH_MAX]; int count; -#if USE_HCACHE +#ifdef USE_HCACHE void *hc = NULL; void *data; struct timeval *when = NULL; @@ -870,7 +871,7 @@ void maildir_delayed_parsing (CONTEXT * ctx, struct maildir *md) if (!(p && p->h && !p->header_parsed)) continue; -#if USE_HCACHE +#ifdef USE_HCACHE data = mutt_hcache_fetch (hc, p->h->path + 3, &maildir_hcache_keylen); when = (struct timeval *) data; #endif @@ -879,7 +880,7 @@ void maildir_delayed_parsing (CONTEXT * ctx, struct maildir *md) mutt_message (_("Reading %s... %d"), ctx->path, count); snprintf (fn, sizeof (fn), "%s/%s", ctx->path, p->h->path); -#if USE_HCACHE +#ifdef USE_HCACHE if (option (OPTHCACHEVERIFY)) { ret = stat (fn, &lastchanged); } @@ -897,17 +898,17 @@ void maildir_delayed_parsing (CONTEXT * ctx, struct maildir *md) if (maildir_parse_message (ctx->magic, fn, p->h->old, p->h)) { p->header_parsed = 1; maildir_parse_flags (p->h, fn); -#if USE_HCACHE +#ifdef USE_HCACHE mutt_hcache_store (hc, p->h->path + 3, p->h, 0, &maildir_hcache_keylen); #endif } else mutt_free_header (&p->h); -#if USE_HCACHE - mem_free (&data); +#ifdef USE_HCACHE + p_delete(&data); #endif } -#if USE_HCACHE +#ifdef USE_HCACHE mutt_hcache_close (hc); #endif } @@ -1068,7 +1069,7 @@ static int maildir_open_new_message (MESSAGE * msg, CONTEXT * dest, HEADER * hdr } if ((msg->fp = fdopen (fd, "w")) == NULL) { - mem_free (&msg->path); + p_delete(&msg->path); close (fd); unlink (path); return (-1); @@ -1133,7 +1134,7 @@ static int maildir_commit_message (MESSAGE * msg, CONTEXT * ctx, HEADER * hdr) if (safe_rename (msg->path, full) == 0) { if (hdr) str_replace (&hdr->path, path); - mem_free (&msg->path); + p_delete(&msg->path); /* * Adjust the mtime on the file to match the time at which this @@ -1219,7 +1220,7 @@ static int _mh_commit_message (MESSAGE * msg, CONTEXT * ctx, HEADER * hdr, if (safe_rename (msg->path, path) == 0) { if (hdr) str_replace (&hdr->path, tmp); - mem_free (&msg->path); + p_delete(&msg->path); break; } else if (errno != EEXIST) { @@ -1385,7 +1386,7 @@ static int mh_sync_mailbox (CONTEXT * ctx, int unused, int *index_hint) char path[_POSIX_PATH_MAX], tmp[_POSIX_PATH_MAX]; int i, j; -#if USE_HCACHE +#ifdef USE_HCACHE void *hc = NULL; #endif /* USE_HCACHE */ @@ -1397,7 +1398,7 @@ static int mh_sync_mailbox (CONTEXT * ctx, int unused, int *index_hint) if (i != 0) return i; -#if USE_HCACHE +#ifdef USE_HCACHE if (ctx->magic == M_MAILDIR) hc = mutt_hcache_open (HeaderCache, ctx->path); #endif /* USE_HCACHE */ @@ -1408,7 +1409,7 @@ static int mh_sync_mailbox (CONTEXT * ctx, int unused, int *index_hint) snprintf (path, sizeof (path), "%s/%s", ctx->path, ctx->hdrs[i]->path); if (ctx->magic == M_MAILDIR || (option (OPTMHPURGE) && ctx->magic == M_MH)) { -#if USE_HCACHE +#ifdef USE_HCACHE if (ctx->magic == M_MAILDIR) mutt_hcache_delete (hc, ctx->hdrs[i]->path + 3, &maildir_hcache_keylen); @@ -1441,7 +1442,7 @@ static int mh_sync_mailbox (CONTEXT * ctx, int unused, int *index_hint) } } -#if USE_HCACHE +#ifdef USE_HCACHE if (ctx->magic == M_MAILDIR) mutt_hcache_close (hc); #endif /* USE_HCACHE */ @@ -1466,7 +1467,7 @@ static int mh_sync_mailbox (CONTEXT * ctx, int unused, int *index_hint) return 0; err: -#if USE_HCACHE +#ifdef USE_HCACHE if (ctx->magic == M_MAILDIR) mutt_hcache_close (hc); #endif /* USE_HCACHE */ @@ -1720,7 +1721,7 @@ static int mh_check_mailbox (CONTEXT * ctx, int *index_hint, int unused) safe_fclose (&fp); if (safe_rename (tmp, buf) == -1) unlink (tmp); - mem_free (&tmp); + p_delete(&tmp); } } @@ -1976,7 +1977,7 @@ static int maildir_is_magic (const char* path, struct stat* st) { /* routines common to maildir and mh */ static mx_t* reg_mx (void) { - mx_t* fmt = mem_calloc (1, sizeof (mx_t)); + mx_t* fmt = p_new(mx_t, 1); fmt->local = 1; fmt->mx_access = access; fmt->mx_sync_mailbox = mh_sync_mailbox;