summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathon Jongsma <jjongsma@redhat.com>2015-01-16 14:19:33 -0600
committerFabiano FidĂȘncio <fidencio@redhat.com>2015-02-23 23:00:42 +0100
commit6a8775f360af90bf4f44e243d0a4a2b24f0a008d (patch)
tree523e380242b38615471b727c04947d5bab06222f
parente0fa0d5ae2e6cc4b5a10a26c8f20c6bdb5c1f4ef (diff)
downloadspice-6a8775f360af90bf4f44e243d0a4a2b24f0a008d.tar.gz
spice-6a8775f360af90bf4f44e243d0a4a2b24f0a008d.tar.xz
spice-6a8775f360af90bf4f44e243d0a4a2b24f0a008d.zip
Change reds_register_channel() to take RedsState arg
In preparation for getting rid of the global 'reds' variable, we need to pass the RedsState variable to all functions where it is needed. For now the callers just pass in the global reds variable.
-rw-r--r--server/inputs-channel.c2
-rw-r--r--server/red-dispatcher.c4
-rw-r--r--server/reds.c2
-rw-r--r--server/reds.h2
-rw-r--r--server/sound.c4
-rw-r--r--server/spicevmc.c2
6 files changed, 8 insertions, 8 deletions
diff --git a/server/inputs-channel.c b/server/inputs-channel.c
index d12d8628..d49e6bea 100644
--- a/server/inputs-channel.c
+++ b/server/inputs-channel.c
@@ -671,7 +671,7 @@ void inputs_init(void)
red_channel_register_client_cbs(&g_inputs_channel->base, &client_cbs);
red_channel_set_cap(&g_inputs_channel->base, SPICE_INPUTS_CAP_KEY_SCANCODE);
- reds_register_channel(&g_inputs_channel->base);
+ reds_register_channel(reds, &g_inputs_channel->base);
if (!(key_modifiers_timer = core->timer_add(key_modifiers_sender, NULL))) {
spice_error("key modifiers timer create failed");
diff --git a/server/red-dispatcher.c b/server/red-dispatcher.c
index 05548a19..f057d273 100644
--- a/server/red-dispatcher.c
+++ b/server/red-dispatcher.c
@@ -1060,7 +1060,7 @@ RedDispatcher *red_dispatcher_new(QXLInstance *qxl)
client_cbs.migrate = red_dispatcher_cursor_migrate;
red_channel_register_client_cbs(channel, &client_cbs);
red_channel_set_data(channel, red_dispatcher);
- reds_register_channel(channel);
+ reds_register_channel(reds, channel);
channel = red_worker_get_display_channel(worker);
client_cbs.connect = red_dispatcher_set_display_peer;
@@ -1070,7 +1070,7 @@ RedDispatcher *red_dispatcher_new(QXLInstance *qxl)
red_channel_set_data(channel, red_dispatcher);
red_channel_set_cap(channel, SPICE_DISPLAY_CAP_MONITORS_CONFIG);
red_channel_set_cap(channel, SPICE_DISPLAY_CAP_STREAM_REPORT);
- reds_register_channel(channel);
+ reds_register_channel(reds, channel);
red_worker_run(worker);
num_active_workers = 1;
diff --git a/server/reds.c b/server/reds.c
index 49b7b00c..951c0a2b 100644
--- a/server/reds.c
+++ b/server/reds.c
@@ -321,7 +321,7 @@ void reds_update_stat_value(uint32_t value)
#endif
-void reds_register_channel(RedChannel *channel)
+void reds_register_channel(RedsState *reds, RedChannel *channel)
{
spice_assert(reds);
ring_add(&reds->channels, &channel->link);
diff --git a/server/reds.h b/server/reds.h
index 31d6ec70..b194dab2 100644
--- a/server/reds.h
+++ b/server/reds.h
@@ -57,7 +57,7 @@ void reds_enable_mm_time(void);
uint32_t reds_get_mm_time(void);
void reds_set_client_mouse_allowed(int is_client_mouse_allowed,
int x_res, int y_res);
-void reds_register_channel(RedChannel *channel);
+void reds_register_channel(RedsState *reds, RedChannel *channel);
void reds_unregister_channel(RedChannel *channel);
int reds_get_mouse_mode(void); // used by inputs_channel
int reds_get_agent_mouse(void); // used by inputs_channel
diff --git a/server/sound.c b/server/sound.c
index bdc40904..f03c36df 100644
--- a/server/sound.c
+++ b/server/sound.c
@@ -1531,7 +1531,7 @@ void snd_attach_playback(SpicePlaybackInstance *sin)
playback_worker->base_channel = channel;
add_worker(playback_worker);
- reds_register_channel(playback_worker->base_channel);
+ reds_register_channel(reds, playback_worker->base_channel);
}
void snd_attach_record(SpiceRecordInstance *sin)
@@ -1560,7 +1560,7 @@ void snd_attach_record(SpiceRecordInstance *sin)
record_worker->base_channel = channel;
add_worker(record_worker);
- reds_register_channel(record_worker->base_channel);
+ reds_register_channel(reds, record_worker->base_channel);
}
static void snd_detach_common(SndWorker *worker)
diff --git a/server/spicevmc.c b/server/spicevmc.c
index 6695ca5c..c38c9749 100644
--- a/server/spicevmc.c
+++ b/server/spicevmc.c
@@ -543,7 +543,7 @@ SpiceCharDeviceState *spicevmc_device_connect(SpiceCharDeviceInstance *sin,
state);
state->chardev_sin = sin;
- reds_register_channel(&state->channel);
+ reds_register_channel(reds, &state->channel);
return state->chardev_st;
}