This make sure these stuff are initialized without using runtime resources. Also make sure stuff are initialize really earlier. Signed-off-by: Frediano Ziglio <fziglio@xxxxxxxxxx> --- server/red-dispatcher.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/server/red-dispatcher.c b/server/red-dispatcher.c index c2ca6b6..d09d56d 100644 --- a/server/red-dispatcher.c +++ b/server/red-dispatcher.c @@ -902,6 +902,12 @@ void red_dispatcher_async_complete(struct RedDispatcher *dispatcher, free(async_command); } +static void __attribute__((constructor)) red_dispatcher_global_init(void) +{ + quic_init(); + sw_canvas_init(); +} + void red_dispatcher_init(QXLInstance *qxl) { RedDispatcher *red_dispatcher; @@ -911,13 +917,6 @@ void red_dispatcher_init(QXLInstance *qxl) spice_return_if_fail(qxl != NULL); spice_return_if_fail(qxl->st->dispatcher == NULL); - static gsize initialized = FALSE; - if (g_once_init_enter(&initialized)) { - quic_init(); - sw_canvas_init(); - g_once_init_leave(&initialized, TRUE); - } - red_dispatcher = spice_new0(RedDispatcher, 1); red_dispatcher->qxl = qxl; dispatcher_init(&red_dispatcher->dispatcher, RED_WORKER_MESSAGE_COUNT, NULL); -- 2.5.0 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel