Changeset 5111:c38765da3fe8 for imap

Show
Ignore:
Timestamp:
2007-04-10 15:32:08 (20 months ago)
Author:
Brendan Cully <brendan@…>
Branch:
HEAD
Message:

Add imap_hcache_del; minor cleanups

Location:
imap
Files:
4 modified

Legend:

Unmodified
Added
Removed
  • imap/command.c

    r5062 r5111  
    3131#include "mx.h" 
    3232#include "buffy.h" 
    33 #if USE_HCACHE 
    34 #include "hcache.h" 
    35 #endif 
    3633 
    3734#include <ctype.h> 
  • imap/imap.c

    r5102 r5111  
    249249  int i, cacheno; 
    250250 
    251 #if USE_HCACHE 
    252   char uidbuf[32]; 
    253 #endif 
    254  
    255251  for (i = 0; i < idata->ctx->msgcount; i++) 
    256252  { 
     
    266262      imap_cache_del (idata, h); 
    267263#if USE_HCACHE 
    268       if (idata->hcache) 
    269       { 
    270         sprintf (uidbuf, "/%u", HEADER_DATA(h)->uid); 
    271         mutt_hcache_delete (idata->hcache, uidbuf, imap_hcache_keylen); 
    272       } 
     264      imap_hcache_del (idata, HEADER_DATA(h)->uid); 
    273265#endif 
    274266 
     
    11041096  int n; 
    11051097  int rc; 
    1106 #if USE_HCACHE 
    1107   char uidbuf[32]; 
    1108 #endif 
    11091098   
    11101099  idata = (IMAP_DATA*) ctx->data; 
     
    11571146 
    11581147    if (h->deleted) 
     1148    { 
    11591149      imap_cache_del (idata, h); 
    11601150#if USE_HCACHE 
    1161     if (idata->hcache && h->deleted) 
    1162     { 
    1163       sprintf (uidbuf, "/%u", HEADER_DATA(h)->uid); 
    1164       mutt_hcache_delete (idata->hcache, uidbuf, imap_hcache_keylen); 
    1165     } 
     1151      imap_hcache_del (idata, HEADER_DATA(h)->uid); 
    11661152#endif 
     1153    } 
     1154     
    11671155    if (h->active && h->changed) 
    11681156    { 
  • imap/imap_private.h

    r5074 r5111  
    263263HEADER* imap_hcache_get (IMAP_DATA* idata, unsigned int uid); 
    264264int imap_hcache_put (IMAP_DATA* idata, HEADER* h); 
     265int imap_hcache_del (IMAP_DATA* idata, unsigned int uid); 
    265266#endif 
    266267 
  • imap/util.c

    r5074 r5111  
    9595  HEADER* h = NULL; 
    9696 
    97   sprintf(key, "/%u", uid); 
     97  if (!idata->hcache) 
     98    return NULL; 
     99 
     100  sprintf (key, "/%u", uid); 
    98101  uv = (unsigned int*)mutt_hcache_fetch (idata->hcache, key, 
    99102                                         imap_hcache_keylen); 
     
    112115  char key[16]; 
    113116 
    114   sprintf(key, "/%u", HEADER_DATA (h)->uid); 
     117  if (!idata->hcache) 
     118    return -1; 
     119 
     120  sprintf (key, "/%u", HEADER_DATA (h)->uid); 
    115121  return mutt_hcache_store (idata->hcache, key, h, idata->uid_validity, 
    116122                            imap_hcache_keylen); 
     123} 
     124 
     125int imap_hcache_del (IMAP_DATA* idata, unsigned int uid) 
     126{ 
     127  char key[16]; 
     128 
     129  if (!idata->hcache) 
     130    return -1; 
     131 
     132  sprintf (key, "/%u", uid); 
     133  return mutt_hcache_delete (idata->hcache, key, imap_hcache_keylen); 
    117134} 
    118135#endif