summaryrefslogtreecommitdiffstats
path: root/courgette/disassembler_win32_x64.cc
diff options
context:
space:
mode:
Diffstat (limited to 'courgette/disassembler_win32_x64.cc')
-rw-r--r--courgette/disassembler_win32_x64.cc12
1 files changed, 4 insertions, 8 deletions
diff --git a/courgette/disassembler_win32_x64.cc b/courgette/disassembler_win32_x64.cc
index 04356d7..626bd35 100644
--- a/courgette/disassembler_win32_x64.cc
+++ b/courgette/disassembler_win32_x64.cc
@@ -514,15 +514,11 @@ CheckBool DisassemblerWin32X64::ParseNonSectionFileRegion(
if (incomplete_disassembly_)
return true;
- const uint8* start = OffsetToPointer(start_file_offset);
- const uint8* end = OffsetToPointer(end_file_offset);
-
- const uint8* p = start;
-
- while (p < end) {
- if (!program->EmitByteInstruction(*p))
+ if (end_file_offset > start_file_offset) {
+ if (!program->EmitBytesInstruction(OffsetToPointer(start_file_offset),
+ end_file_offset - start_file_offset)) {
return false;
- ++p;
+ }
}
return true;