From 0de87e5bce24ff08528b9e4fcc67a13e559b34c4 Mon Sep 17 00:00:00 2001 From: superponible Date: Wed, 27 May 2020 08:04:57 -0500 Subject: [PATCH] fix off by one and loop counters --- volatility/framework/layers/registry.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/volatility/framework/layers/registry.py b/volatility/framework/layers/registry.py index 379053ad9..dcf189fec 100644 --- a/volatility/framework/layers/registry.py +++ b/volatility/framework/layers/registry.py @@ -224,7 +224,7 @@ class RegistryHive(linear.LinearlyMappedLayer): response = [] current_offset = offset remaining_length = length - chunk_size = (self._page_size - 1) - (offset & (self._page_size - 1)) + chunk_size = self._page_size - (offset & (self._page_size - 1)) while remaining_length > 0: chunk_size = min(chunk_size, remaining_length, self._page_size) try: @@ -233,8 +233,8 @@ class RegistryHive(linear.LinearlyMappedLayer): except exceptions.LayerException: if not ignore_errors: raise - current_offset += self._page_size - remaining_length -= self._page_size + current_offset += chunk_size + remaining_length -= chunk_size chunk_size = self._page_size return response