summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bits.c2
-rw-r--r--test_bits.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/bits.c b/bits.c
index 775b9682..19a86b47 100644
--- a/bits.c
+++ b/bits.c
@@ -139,7 +139,7 @@ void shiftleft(unsigned char *data, int size, unsigned short left)
if (left >= CHAR_BIT) {
size -= left/CHAR_BIT;
- memmove(data, data + left/CHAR_BIT, size);
+ memmove(data, data + left/CHAR_BIT, (size + CHAR_BIT - 1)/CHAR_BIT);
left %= CHAR_BIT;
}
diff --git a/test_bits.c b/test_bits.c
index b9ede2e0..4419213d 100644
--- a/test_bits.c
+++ b/test_bits.c
@@ -234,7 +234,7 @@ int main(int argc, char *argv[])
LASSERT(0, 0x01);
LASSERT(1, 0x41);
LASSERT(2, 0x81);
- LASSERT(3, 0xc2);
+ LASSERT(3, 0xc1);
#undef LASSERT