summaryrefslogtreecommitdiff
path: root/server/dcc.cpp
diff options
context:
space:
mode:
authorFrediano Ziglio <fziglio@redhat.com>2020-03-03 11:04:05 +0000
committerFrediano Ziglio <freddy77@gmail.com>2020-05-01 06:58:09 +0100
commit6e14b6bc99a3285d1fdc89c077972f0cab9bfceb (patch)
tree365eddf1a057e86268a85a339c459deb1ae88751 /server/dcc.cpp
parent69fbef6fff925fa86671db7878121af39c2476fc (diff)
Reimplement video-codes update with no GObject signals
This is in preparation to remove GObjects, as signals require them. Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
Diffstat (limited to 'server/dcc.cpp')
-rw-r--r--server/dcc.cpp9
1 files changed, 1 insertions, 8 deletions
diff --git a/server/dcc.cpp b/server/dcc.cpp
index a825cf2d..d9ac0047 100644
--- a/server/dcc.cpp
+++ b/server/dcc.cpp
@@ -38,7 +38,6 @@ enum
PROP_ZLIB_GLZ_STATE
};
-static void on_display_video_codecs_update(GObject *gobject, GParamSpec *pspec, gpointer user_data);
static bool dcc_config_socket(RedChannelClient *rcc);
static void dcc_on_disconnect(RedChannelClient *rcc);
@@ -102,9 +101,6 @@ display_channel_client_constructed(GObject *object)
dcc_init_stream_agents(self);
image_encoders_init(&self->priv->encoders, &DCC_TO_DC(self)->priv->encoder_shared_data);
-
- g_signal_connect(DCC_TO_DC(self), "notify::video-codecs",
- G_CALLBACK(on_display_video_codecs_update), self);
}
static void
@@ -112,7 +108,6 @@ display_channel_client_finalize(GObject *object)
{
DisplayChannelClient *self = DISPLAY_CHANNEL_CLIENT(object);
- g_signal_handlers_disconnect_by_func(DCC_TO_DC(self), (void*) on_display_video_codecs_update, self);
g_clear_pointer(&self->priv->preferred_video_codecs, g_array_unref);
g_clear_pointer(&self->priv->client_preferred_video_codecs, g_array_unref);
g_free(self->priv);
@@ -1136,10 +1131,8 @@ static void dcc_update_preferred_video_codecs(DisplayChannelClient *dcc)
g_free(codecs_str);
}
-static void on_display_video_codecs_update(GObject *gobject, GParamSpec *pspec, gpointer user_data)
+void dcc_video_codecs_update(DisplayChannelClient *dcc)
{
- DisplayChannelClient *dcc = DISPLAY_CHANNEL_CLIENT(user_data);
-
/* Only worry about video-codecs update if client has sent
* SPICE_MSGC_DISPLAY_PREFERRED_VIDEO_CODEC_TYPE */
if (dcc->priv->client_preferred_video_codecs == NULL) {