Skip to content

Commit

Permalink
gdb_hostio: Expect other-than immediate F-reply packets from GDB
Browse files Browse the repository at this point in the history
  • Loading branch information
ALTracer committed Nov 21, 2023
1 parent fac5c92 commit cfc6a42
Showing 1 changed file with 9 additions and 2 deletions.
11 changes: 9 additions & 2 deletions src/gdb_hostio.c
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,15 @@ int hostio_reply(target_controller_s *const tc, char *const pbuf, const int len)
static int hostio_get_response(target_controller_s *const tc)
{
char *const packet_buffer = gdb_packet_buffer();
const size_t size = gdb_getpacket(packet_buffer, GDB_PACKET_BUFFER_SIZE);
return gdb_main_loop(tc, packet_buffer, GDB_PACKET_BUFFER_SIZE, size, true);
/* Still have to service normal 'X'/'m'-packets */
while (true) {
/* Get back the next packet to process and have the main loop handle it */
const size_t size = gdb_getpacket(packet_buffer, GDB_PACKET_BUFFER_SIZE);
const int result = gdb_main_loop(tc, packet_buffer, GDB_PACKET_BUFFER_SIZE, size, true);
/* If this was an F-packet, we're done */
if (packet_buffer[0] == 'F')
return result;
}
}

/* Interface to host system calls */
Expand Down

0 comments on commit cfc6a42

Please sign in to comment.