Andreas Krennmair:
[apps/madmutt.git] / hcache.c
index ef6831f..dea409e 100644 (file)
--- a/hcache.c
+++ b/hcache.c
  *     Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
  */
 
+# if HAVE_INTTYPES_H
+#  include <inttypes.h>
+# else
+#  if HAVE_STDINT_H
+#   include <stdint.h>
+#  endif
+# endif
+
 #if HAVE_CONFIG_H
 #include "config.h"
-#endif /* HAVE_CONFIG_H */
+#endif                         /* HAVE_CONFIG_H */
+
+#ifdef USE_HCACHE
 
 #if HAVE_GDBM
 #include <gdbm.h>
@@ -62,7 +72,7 @@ header_cache
 typedef union
 {
         struct timeval timeval;
-        unsigned long long uid_validity;
+        uint64_t uid_validity;
 } validate;
 
 static void *
@@ -512,7 +522,7 @@ mutt_hcache_per_folder(const char *path, const char *folder)
 /* This function transforms a header into a char so that it is useable by
  * db_store */
 static void *
-mutt_hcache_dump(void *_db, HEADER *h, int *off, unsigned long long uid_validity)
+mutt_hcache_dump(void *_db, HEADER *h, int *off, uint64_t uid_validity)
 {
        struct header_cache *db = _db;
        unsigned char *d = NULL;
@@ -521,7 +531,7 @@ mutt_hcache_dump(void *_db, HEADER *h, int *off, unsigned long long uid_validity
        d = lazy_malloc(sizeof(validate));
 
        if (uid_validity) {
-               memcpy(d, &uid_validity, sizeof(long long));
+               memcpy(d, &uid_validity, sizeof(uint64_t));
        } else {
                struct timeval now;
                gettimeofday(&now, NULL);
@@ -654,7 +664,7 @@ mutt_hcache_fetch(void *db, const char *filename, size_t (*keylen)(const char *f
 }
 
 int
-mutt_hcache_store(void *db, const char *filename, HEADER *header, unsigned long long uid_validity, size_t (*keylen)(const char *fn))
+mutt_hcache_store(void *db, const char *filename, HEADER *header, uint64_t uid_validity, size_t (*keylen)(const char *fn))
 {
        struct header_cache *h = db;
        datum key;
@@ -835,7 +845,7 @@ mutt_hcache_fetch(void *db, const char *filename, size_t (*keylen)(const char *f
 }
 
 int
-mutt_hcache_store(void *db, const char *filename, HEADER *header, unsigned long long uid_validity, size_t (*keylen)(const char *fn))
+mutt_hcache_store(void *db, const char *filename, HEADER *header, uint64_t uid_validity, size_t (*keylen)(const char *fn))
 {
        DBT key;
        DBT data;
@@ -878,3 +888,5 @@ mutt_hcache_delete(void *db, const char *filename, size_t (*keylen)(const char *
        return h->db->del(h->db, NULL, &key, 0);
 }
 #endif
+
+#endif /* USE_HCACHE */