diff --git a/src/arm/debugger/cli-debugger.c b/src/arm/debugger/cli-debugger.c index a4f37e5ef..881b99e11 100644 --- a/src/arm/debugger/cli-debugger.c +++ b/src/arm/debugger/cli-debugger.c @@ -93,7 +93,7 @@ static void _disassembleMode(struct CLIDebugger* debugger, struct CLIDebugVector static inline uint32_t _printLine(struct CLIDebugger* debugger, uint32_t address, enum ExecutionMode mode) { struct CLIDebuggerBackend* be = debugger->backend; - char disassembly[48]; + char disassembly[64]; struct ARMInstructionInfo info; be->printf(be, "%08X: ", address); if (mode == MODE_ARM) { diff --git a/src/arm/decoder.c b/src/arm/decoder.c index 5411c20f3..02dc09dee 100644 --- a/src/arm/decoder.c +++ b/src/arm/decoder.c @@ -8,7 +8,7 @@ #include #define ADVANCE(AMOUNT) \ - if (AMOUNT > blen) { \ + if (AMOUNT >= blen) { \ buffer[blen - 1] = '\0'; \ return total; \ } \ diff --git a/src/lr35902/decoder.c b/src/lr35902/decoder.c index 61832acf1..3d3098441 100644 --- a/src/lr35902/decoder.c +++ b/src/lr35902/decoder.c @@ -409,7 +409,7 @@ size_t LR35902Decode(uint8_t opcode, struct LR35902InstructionInfo* info) { } #define ADVANCE(AMOUNT) \ - if (AMOUNT > blen) { \ + if (AMOUNT >= blen) { \ buffer[blen - 1] = '\0'; \ return total; \ } \