aboutsummaryrefslogtreecommitdiffstats
path: root/xen/common
diff options
context:
space:
mode:
authorkaf24@localhost.localdomain <kaf24@localhost.localdomain>2007-01-21 17:10:58 +0000
committerkaf24@localhost.localdomain <kaf24@localhost.localdomain>2007-01-21 17:10:58 +0000
commit8b8c4769ed9406d2bd8753bc0d829c176c8dedde (patch)
treeadffc025a64925deb2708092e3e44d694b73be8b /xen/common
parent08e6d143574f2e1fd1c7ad22a196bdb90beb17f4 (diff)
downloadxen-8b8c4769ed9406d2bd8753bc0d829c176c8dedde.tar.gz
xen-8b8c4769ed9406d2bd8753bc0d829c176c8dedde.tar.bz2
xen-8b8c4769ed9406d2bd8753bc0d829c176c8dedde.zip
Fix byte-to-long bitmap conversions.
Signed-off-by: Keir Fraser <keir@xensource.com>
Diffstat (limited to 'xen/common')
-rw-r--r--xen/common/bitmap.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/xen/common/bitmap.c b/xen/common/bitmap.c
index 76f55d29e8..363572bedb 100644
--- a/xen/common/bitmap.c
+++ b/xen/common/bitmap.c
@@ -494,8 +494,7 @@ void bitmap_byte_to_long(unsigned long *lp, const uint8_t *bp, int nbits)
for (i = 0, b = 0; nbits > 0; i++, b += sizeof(l)) {
l = 0;
for (j = 0; (j < sizeof(l)) && (nbits > 0); j++) {
- l <<= 8;
- l |= bp[b+j];
+ l |= (unsigned long)bp[b+j] << (j*8);
nbits -= 8;
}
lp[i] = l;