fix overflow in RTS trace logging (maybe) (fixes #30)
This commit is contained in:
parent
f8d5a91363
commit
9f7147c42a
|
@ -859,11 +859,8 @@ void FCEUD_TraceInstruction(uint8 *opcode, int size)
|
||||||
{
|
{
|
||||||
// special case: an RTS opcode
|
// special case: an RTS opcode
|
||||||
// add "----------" to emphasize the end of subroutine
|
// add "----------" to emphasize the end of subroutine
|
||||||
strcat(str_disassembly, " ");
|
static const char* emphasize = " -------------------------------------------------------------------------------------------------------------------------";
|
||||||
int i = strlen(str_disassembly);
|
strncat(str_disassembly, emphasize, LOG_DISASSEMBLY_MAX_LEN - strlen(str_disassembly) - 1);
|
||||||
for (; i < (LOG_DISASSEMBLY_MAX_LEN - 2); ++i)
|
|
||||||
str_disassembly[i] = '-';
|
|
||||||
str_disassembly[i] = 0;
|
|
||||||
}
|
}
|
||||||
// stretch the disassembly string out if we have to output other stuff.
|
// stretch the disassembly string out if we have to output other stuff.
|
||||||
if ((logging_options & (LOG_REGISTERS|LOG_PROCESSOR_STATUS)) && !(logging_options & LOG_TO_THE_LEFT))
|
if ((logging_options & (LOG_REGISTERS|LOG_PROCESSOR_STATUS)) && !(logging_options & LOG_TO_THE_LEFT))
|
||||||
|
|
Loading…
Reference in New Issue