From f7b0c5e6d64924173e8ce34f0a72949fa7b67489 Mon Sep 17 00:00:00 2001 From: Philippe Teuwen Date: Thu, 14 Mar 2019 13:19:16 +0100 Subject: [PATCH] fix manrawdecode last bit missing --- common/lfdemod.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/common/lfdemod.c b/common/lfdemod.c index f356e7578..e2c10bf2c 100644 --- a/common/lfdemod.c +++ b/common/lfdemod.c @@ -1368,7 +1368,7 @@ int manrawdecode(uint8_t *bits, size_t *size, uint8_t invert, uint8_t *alignPos) //find correct start position [alignment] for (k = 0; k < 2; ++k) { - for (i = k; i < *size - 3; i += 2) { + for (i = k; i < *size - 1; i += 2) { if (bits[i] == bits[i + 1]) errCnt++; } @@ -1380,7 +1380,7 @@ int manrawdecode(uint8_t *bits, size_t *size, uint8_t invert, uint8_t *alignPos) } *alignPos = bestRun; //decode - for (i = bestRun; i < *size - 3; i += 2) { + for (i = bestRun; i < *size - 1; i += 2) { if (bits[i] == 1 && (bits[i + 1] == 0)) { bits[bitnum++] = invert; } else if ((bits[i] == 0) && bits[i + 1] == 1) {