From cc4e4ad365e4e67f398a1d3e2c13699d85da0151 Mon Sep 17 00:00:00 2001 From: Tat-Chee Wan (USM) Date: Mon, 21 Feb 2011 17:32:23 +0800 Subject: fixed debugger waitcmd loop to not check indefinitely for messages --- Debugger/debug_stub.S | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'Debugger') diff --git a/Debugger/debug_stub.S b/Debugger/debug_stub.S index a7f3815..2f688c9 100644 --- a/Debugger/debug_stub.S +++ b/Debugger/debug_stub.S @@ -533,9 +533,9 @@ dbg__bkpt_offset_outofrange: * ****************************************************************************/ dbg__bkpt_waitCMD: -1: bl dbg__getDebugMsg /* Read new message from Debugger, message buffer addr in R0, 0 if none, -1 if error */ + bl dbg__getDebugMsg /* Read new message from Debugger, message buffer addr in R0, 0 if none, -1 if error */ cmp r0, #0 - beq 1b /* No message yet, keep checking */ + beq _dbg__housekeeping /* No message yet, do housekeeping tasks */ movlt r0, #MSG_ERRCHKSUM /* Message invalid, checksum error? */ blt _dbg__cmdError /* Send response to GDB server */ /* Message now has $\0 */ @@ -560,6 +560,7 @@ _dbg__cmdExists: _dbg__cmdError: _dbg_outputMsgStatusErr bl dbg__putDebugMsg /* Send error response to the GDB server */ +_dbg__housekeeping: bl dbg__runloopTasks /* Execute platform run loop tasks while in ABRT mode */ b dbg__bkpt_waitCMD -- cgit v1.2.3