diff options
author | Tom Tromey <tromey@redhat.com> | 2013-08-14 18:16:30 +0000 |
---|---|---|
committer | Tom Tromey <tromey@redhat.com> | 2013-08-14 18:16:30 +0000 |
commit | 88b496c367b7abc6edb286ff4e19807f1c84af00 (patch) | |
tree | c8728447c33753b4074192670ea6634754c55764 /gdb/remote.c | |
parent | 2f65bcb75d05d93af037229e084160fe25259322 (diff) | |
download | gdb-88b496c367b7abc6edb286ff4e19807f1c84af00.zip gdb-88b496c367b7abc6edb286ff4e19807f1c84af00.tar.gz gdb-88b496c367b7abc6edb286ff4e19807f1c84af00.tar.bz2 |
move async_client_callback and async_client_context into remote_state
This moves async_client_callback and async_client_context into
remote_state.
* remote.c (struct remote_state) <async_client_callback,
async_client_context>: New fields.
(async_client_callback, async_client_context): Remove.
(remote_async_serial_handler, remote_async): Update.
Diffstat (limited to 'gdb/remote.c')
-rw-r--r-- | gdb/remote.c | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/gdb/remote.c b/gdb/remote.c index 0fa5fcd..469d8a4 100644 --- a/gdb/remote.c +++ b/gdb/remote.c @@ -401,6 +401,10 @@ struct remote_state and set to false when the target fails to recognize it). */ int use_threadinfo_query; int use_threadextra_query; + + void (*async_client_callback) (enum inferior_event_type event_type, + void *context); + void *async_client_context; }; /* Private data that we'll store in (struct thread_info)->private. */ @@ -11635,17 +11639,16 @@ remote_is_async_p (void) will be able to delay notifying the client of an event until the point where an entire packet has been received. */ -static void (*async_client_callback) (enum inferior_event_type event_type, - void *context); -static void *async_client_context; static serial_event_ftype remote_async_serial_handler; static void remote_async_serial_handler (struct serial *scb, void *context) { + struct remote_state *rs = context; + /* Don't propogate error information up to the client. Instead let the client find out about the error by querying the target. */ - async_client_callback (INF_REG_EVENT, async_client_context); + rs->async_client_callback (INF_REG_EVENT, rs->async_client_context); } static void @@ -11662,9 +11665,9 @@ remote_async (void (*callback) (enum inferior_event_type event_type, if (callback != NULL) { - serial_async (rs->remote_desc, remote_async_serial_handler, NULL); - async_client_callback = callback; - async_client_context = context; + serial_async (rs->remote_desc, remote_async_serial_handler, rs); + rs->async_client_callback = callback; + rs->async_client_context = context; } else serial_async (rs->remote_desc, NULL, NULL); |