From 51d6aed2d79e1d0f4099c813a916888df7ecf3fd Mon Sep 17 00:00:00 2001 From: Martin Mares Date: Fri, 16 Jan 2004 17:01:58 +0000 Subject: [PATCH] Replacing of buckets during shakedown didn't work. --- lib/bucket.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/bucket.c b/lib/bucket.c index df9740bd..ec672da3 100644 --- a/lib/bucket.c +++ b/lib/bucket.c @@ -609,20 +609,20 @@ obuck_shakedown(int (*kibitz)(struct obuck_header *old, oid_t new, byte *buck)) int status = kibitz(rhdr, w_bucket_start >> OBUCK_SHIFT, (byte *)(rhdr+1)); if (status) { + int lnew = l; if (status > 1) { /* Changed! Reconstruct the trailer. */ - int l2 = obuck_bucket_size(rhdr->length); - ASSERT(l2 <= l); - PUT_U32((byte *)rhdr + l2 - 4, OBUCK_TRAILER); - l = l2; + lnew = obuck_bucket_size(rhdr->length); + ASSERT(lnew <= l); + PUT_U32((byte *)rhdr + lnew - 4, OBUCK_TRAILER); changed = 1; } whdr = (struct obuck_header *)(buf+woff); if (rhdr != whdr) - memmove(whdr, rhdr, l); + memmove(whdr, rhdr, lnew); whdr->oid = w_bucket_start >> OBUCK_SHIFT; - woff += l; + woff += lnew; } else changed = 1; -- 2.39.2