[Spice-devel] [PATCH 08/19] Hook up main_dispatcher_constructed()
Frediano Ziglio
fziglio at redhat.com
Thu Feb 18 15:43:11 UTC 2016
>
> From: Jonathon Jongsma <jjongsma at redhat.com>
>
> Forgot to implement hook up this vfunc in the class init function, so we
> were getting a crash on the main dispatcher. We also need to make sure
> that we chain up to the parent vfunc.
>
This is a fix to a previous patch, should be squashed into it.
Frediano
> #0 0x00007fffed0478c7 in __GI_raise (sig=sig at entry=6) at
> ../sysdeps/unix/sysv/linux/raise.c:55
> #1 0x00007fffed04952a in __GI_abort () at abort.c:89
> #2 0x00007fffed04046d in __assert_fail_base (fmt=0x7fffed19a1f8
> "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n",
> assertion=assertion at entry=0x7ffff7b8cf28
> "dispatcher->priv->messages[message_type].handler",
> file=file at entry=0x7ffff7b8cede "dispatcher.c", line=line at entry=324,
> function=function at entry=0x7ffff7b8d210 <__PRETTY_FUNCTION__.16179>
> "dispatcher_send_message") at assert.c:92
> #3 0x00007fffed040522 in __GI___assert_fail (assertion=0x7ffff7b8cf28
> "dispatcher->priv->messages[message_type].handler", file=0x7ffff7b8cede
> "dispatcher.c", line=324, function=0x7ffff7b8d210
> <__PRETTY_FUNCTION__.16179> "dispatcher_send_message") at assert.c:101
> #4 0x00007ffff7a89367 in dispatcher_send_message
> (dispatcher=0x55555625f0c0 [MainDispatcher], message_type=2,
> payload=0x7fffdd1fe5a0) at dispatcher.c:324
> #5 0x00007ffff7a8d3da in main_dispatcher_set_mm_time_latency
> (self=0x55555625f0c0 [MainDispatcher], client=0x5555564d2740, latency=0)
> at main-dispatcher.c:260
> ---
> server/dispatcher.c | 2 ++
> server/main-dispatcher.c | 5 +++++
> 2 files changed, 7 insertions(+)
>
> diff --git a/server/dispatcher.c b/server/dispatcher.c
> index 2c04eb4..cd2f2cb 100644
> --- a/server/dispatcher.c
> +++ b/server/dispatcher.c
> @@ -121,6 +121,8 @@ static void dispatcher_constructed(GObject *object)
> Dispatcher *self = DISPATCHER(object);
> int channels[2];
>
> + G_OBJECT_CLASS(dispatcher_parent_class)->constructed(object);
> +
> #ifdef DEBUG_DISPATCHER
> setup_dummy_signal_handler();
> #endif
> diff --git a/server/main-dispatcher.c b/server/main-dispatcher.c
> index 6b8ca53..bc0de24 100644
> --- a/server/main-dispatcher.c
> +++ b/server/main-dispatcher.c
> @@ -104,6 +104,8 @@ main_dispatcher_set_property(GObject *object,
> }
> }
>
> +static void main_dispatcher_constructed(GObject *object);
> +
> static void
> main_dispatcher_class_init(MainDispatcherClass *klass)
> {
> @@ -111,6 +113,7 @@ main_dispatcher_class_init(MainDispatcherClass *klass)
>
> g_type_class_add_private(klass, sizeof(MainDispatcherPrivate));
>
> + object_class->constructed = main_dispatcher_constructed;
> object_class->get_property = main_dispatcher_get_property;
> object_class->set_property = main_dispatcher_set_property;
>
> @@ -297,6 +300,8 @@ MainDispatcher* main_dispatcher_new(RedsState *reds,
> SpiceCoreInterfaceInternal
> void main_dispatcher_constructed(GObject *object)
> {
> MainDispatcher *self = MAIN_DISPATCHER(object);
> +
> + G_OBJECT_CLASS(main_dispatcher_parent_class)->constructed(object);
> dispatcher_set_opaque(DISPATCHER(self), self);
>
> self->priv->core->watch_add(self->priv->core,
More information about the Spice-devel
mailing list