[PATCH 4/4] Unify getpkt and getpkt_or_notif_sane
Tom Tromey
tromey@adacore.com
Mon Aug 28 17:14:25 GMT 2023
getpkt and getpkt_or_notif_sane are just wrappers for
getpkt_or_notif_sane_1. This patch adds the is_notif parameter to
getpkt, with a suitable default, and removes the wrappers.
---
gdb/remote.c | 35 +++++------------------------------
1 file changed, 5 insertions(+), 30 deletions(-)
diff --git a/gdb/remote.c b/gdb/remote.c
index 88c422b0c63..edda9457745 100644
--- a/gdb/remote.c
+++ b/gdb/remote.c
@@ -1213,11 +1213,7 @@ class remote_target : public process_stratum_target
void skip_frame ();
long read_frame (gdb::char_vector *buf_p);
- int getpkt_or_notif_sane_1 (gdb::char_vector *buf, bool forever,
- bool *is_notif);
- int getpkt (gdb::char_vector *buf, bool forever);
- int getpkt_or_notif_sane (gdb::char_vector *buf, bool forever,
- bool *is_notif);
+ int getpkt (gdb::char_vector *buf, bool forever, bool *is_notif = nullptr);
int remote_vkill (int pid);
void remote_kill_k ();
@@ -8297,7 +8293,7 @@ remote_target::wait_ns (ptid_t ptid, struct target_waitstatus *status,
/* If in non-stop mode, get out of getpkt even if a
notification is received. */
- ret = getpkt_or_notif_sane (&rs->buf, false /* forever */, &is_notif);
+ ret = getpkt (&rs->buf, false /* forever */, &is_notif);
while (1)
{
if (ret != -1 && !is_notif)
@@ -8336,7 +8332,7 @@ remote_target::wait_ns (ptid_t ptid, struct target_waitstatus *status,
}
/* Otherwise do a blocking wait. */
- ret = getpkt_or_notif_sane (&rs->buf, true /* forever */, &is_notif);
+ ret = getpkt (&rs->buf, true /* forever */, &is_notif);
}
}
@@ -8391,7 +8387,7 @@ remote_target::wait_as (ptid_t ptid, target_waitstatus *status,
However, before we do that we need to ensure that the caller
knows how to take the target into/out of async mode. */
bool is_notif;
- int ret = getpkt_or_notif_sane (&rs->buf, forever, &is_notif);
+ int ret = getpkt (&rs->buf, forever, &is_notif);
/* GDB gets a notification. Return to core as this event is
not interesting. */
@@ -10056,9 +10052,7 @@ show_watchdog (struct ui_file *file, int from_tty,
packet). */
int
-remote_target::getpkt_or_notif_sane_1 (gdb::char_vector *buf,
- bool forever,
- bool *is_notif)
+remote_target::getpkt (gdb::char_vector *buf, bool forever, bool *is_notif)
{
struct remote_state *rs = get_remote_state ();
int c;
@@ -10195,25 +10189,6 @@ remote_target::getpkt_or_notif_sane_1 (gdb::char_vector *buf,
}
}
-/* Read a packet from the remote machine, with error checking, and
- store it in *BUF. Resize *BUF if necessary to hold the result. If
- FOREVER, wait forever rather than timing out; this is used (in
- synchronous mode) to wait for a target that is is executing user
- code to stop. */
-
-int
-remote_target::getpkt (gdb::char_vector *buf, bool forever)
-{
- return getpkt_or_notif_sane_1 (buf, forever, NULL);
-}
-
-int
-remote_target::getpkt_or_notif_sane (gdb::char_vector *buf, bool forever,
- bool *is_notif)
-{
- return getpkt_or_notif_sane_1 (buf, forever, is_notif);
-}
-
/* Kill any new fork children of inferior INF that haven't been
processed by follow_fork. */
--
2.40.1
More information about the Gdb-patches
mailing list