Add new_remote_state

Add new_remote_state and change remote_state to be a pointer.  This is
a preparatory patch for a later series.  It could perhaps be omitted,
but new_remote_state also does some initialization that was previously
done for the globals.

	* remote.c (remote_state): Now a pointer.
	(get_remote_state_raw): Update.
	(new_remote_state): New function.
	(_initialize_remote): Use new_remote_state.
This commit is contained in:
Tom Tromey 2013-08-14 18:00:34 +00:00
parent dc473cfbf9
commit cf79286214
2 changed files with 27 additions and 7 deletions

View File

@ -1,3 +1,10 @@
2013-08-14 Tom Tromey <tromey@redhat.com>
* remote.c (remote_state): Now a pointer.
(get_remote_state_raw): Update.
(new_remote_state): New function.
(_initialize_remote): Use new_remote_state.
2013-08-14 Tom Tromey <tromey@redhat.com>
* remote.c (remote_protocol_features): Now const.

View File

@ -390,12 +390,28 @@ remote_multi_process_p (struct remote_state *rs)
have access to the current target when we need it, so for now it is
static. This will be fine for as long as only one target is in use
at a time. */
static struct remote_state remote_state;
static struct remote_state *remote_state;
static struct remote_state *
get_remote_state_raw (void)
{
return &remote_state;
return remote_state;
}
/* Allocate a new struct remote_state with xmalloc, initialize it, and
return it. */
static struct remote_state *
new_remote_state (void)
{
struct remote_state *result = XCNEW (struct remote_state);
/* The default buffer size is unimportant; it will be expanded
whenever a larger buffer is needed. */
result->buf_size = 400;
result->buf = xmalloc (result->buf_size);
return result;
}
/* Description of the remote protocol for a given architecture. */
@ -11793,11 +11809,8 @@ _initialize_remote (void)
/* Initialize the per-target state. At the moment there is only one
of these, not one per target. Only one target is active at a
time. The default buffer size is unimportant; it will be expanded
whenever a larger buffer is needed. */
rs = get_remote_state_raw ();
rs->buf_size = 400;
rs->buf = xmalloc (rs->buf_size);
time. */
remote_state = new_remote_state ();
init_remote_ops ();
add_target (&remote_ops);