X-Git-Url: https://git.distorted.org.uk/~mdw/catacomb/blobdiff_plain/0f00dc4c8eb47e67bc0f148c2dd109f73a451e0a..8f2287ef5c05d496fcb9b012629af007fe56f897:/progs/dsig.c diff --git a/progs/dsig.c b/progs/dsig.c index 5e5a3cfe..1377bcaa 100644 --- a/progs/dsig.c +++ b/progs/dsig.c @@ -233,7 +233,8 @@ static int bget(block *b, FILE *fp, unsigned bin) octet buf[8]; if (fread(buf, sizeof(buf), 1, fp) < 1) return (E_EOF); - b->t = ((time_t)(((LOAD32(buf + 0) << 16) << 16) & ~MASK32) | + b->t = ((time_t)(((LOAD32(buf + 0) << 16) << 16) & + ~(unsigned long)MASK32) | (time_t)LOAD32(buf + 4)); } else { if (getstring(fp, &b->d, GSF_FILE)) @@ -325,7 +326,8 @@ static void blob(block *b, dstr *d) STORE32(d->buf + d->len, 0xffffffff); STORE32(d->buf + d->len + 4, 0xffffffff); } else { - STORE32(d->buf + d->len, ((b->t & ~MASK32) >> 16) >> 16); + STORE32(d->buf + d->len, + ((b->t & ~(unsigned long)MASK32) >> 16) >> 16); STORE32(d->buf + d->len + 4, b->t); } d->len += 8;