From 27c95056a7646ef11efe1cd8dbbfbf68dd318657 Mon Sep 17 00:00:00 2001 From: Michael Zillgith Date: Fri, 5 Dec 2014 19:18:58 +0100 Subject: [PATCH] - fixed bug in MmsValue_getBitStringAsIntegerBigEndian conversion function --- src/mms/iso_mms/common/mms_value.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/mms/iso_mms/common/mms_value.c b/src/mms/iso_mms/common/mms_value.c index 0fc58d29..8f632dee 100644 --- a/src/mms/iso_mms/common/mms_value.c +++ b/src/mms/iso_mms/common/mms_value.c @@ -447,11 +447,15 @@ MmsValue_getBitStringAsIntegerBigEndian(MmsValue* self) uint32_t value = 0; int bitPos; + int i = 0; for (bitPos = (self->value.bitString.size - 1); bitPos >= 0; bitPos--) { + if (MmsValue_getBitStringBit(self, bitPos)) { - value += (1 << bitPos); + value += (1 << i); } + + i++; } return value;