From 69d87f2d5c0ea5d3730e4fa82015eb804eee7cb0 Mon Sep 17 00:00:00 2001 From: Joel Rosdahl Date: Fri, 2 Mar 2012 23:01:27 +0100 Subject: [PATCH] Make ccache compilable with clang --- manifest.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/manifest.c b/manifest.c index 5b2169816..e5383a193 100644 --- a/manifest.c +++ b/manifest.c @@ -142,6 +142,16 @@ free_manifest(struct manifest *mf) free(mf); } +#define READ_BYTE(var) \ + do { \ + int ch_; \ + ch_ = gzgetc(f); \ + if (ch_ == EOF) { \ + goto error; \ + } \ + (var) = ch_ & 0xFF; \ + } while (false) + #define READ_INT(size, var) \ do { \ int ch_; \ @@ -223,14 +233,14 @@ read_manifest(gzFile f) free_manifest(mf); return NULL; } - READ_INT(1, mf->version); + READ_BYTE(mf->version); if (mf->version != VERSION) { cc_log("Manifest file has unknown version %u", mf->version); free_manifest(mf); return NULL; } - READ_INT(1, mf->hash_size); + READ_BYTE(mf->hash_size); if (mf->hash_size != 16) { /* Temporary measure until we support different hash algorithms. */ cc_log("Manifest file has unsupported hash size %u", mf->hash_size); -- 2.47.3