From 21c610e952b4064747db448ea4cf4d8ee3f14508 Mon Sep 17 00:00:00 2001 From: clanmills Date: Sun, 7 Mar 2021 20:25:04 +0000 Subject: [PATCH] Restoring i < dataLength trigraph that I should not have removed. --- src/futils.cpp | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/futils.cpp b/src/futils.cpp index 468f4ab0..680e72d8 100644 --- a/src/futils.cpp +++ b/src/futils.cpp @@ -155,13 +155,11 @@ namespace Exiv2 { int rc = result && data_buf && output_length < resultSize ? 1 : 0; if ( rc ) { const unsigned char* data = (const unsigned char*) data_buf ; - ::memset(result,0,resultSize); - for (size_t i = 0, j = 0 ; i < dataLength;) { - uint32_t octet_a = data[i++] ; - uint32_t octet_b = data[i++] ; - uint32_t octet_c = data[i++] ; + uint32_t octet_a = i < dataLength ? data[i++] : 0 ; + uint32_t octet_b = i < dataLength ? data[i++] : 0 ; + uint32_t octet_c = i < dataLength ? data[i++] : 0 ; uint32_t triple = (octet_a << 0x10) + (octet_b << 0x08) + octet_c;