index 5f64e72d..dc8e6f1d 100644 --- a/ivi-shell/ivi-shell.c +++ b/ivi-shell/ivi-shell.c @@ -677,10 +677,14 @@ wet_shell_init(struct weston_compositor *compositor, if (!shell->text_backend) goto err_settings; + shell->desktop = weston_desktop_create(compositor, &shell_desktop_api, shell); + if (!shell->desktop) + goto err_text_backend; + if (wl_global_create(compositor->wl_display, &ivi_application_interface, 1, shell, bind_ivi_application) == NULL) - goto err_text_backend; + goto err_desktop; ivi_layout_init_with_compositor(compositor); /* TODO ivi_layout_destroy should be implemented, since multiple lists @@ -690,10 +694,13 @@ wet_shell_init(struct weston_compositor *compositor, /* Call module_init of ivi-modules which are defined in weston.ini */ if (load_controller_modules(compositor, setting.ivi_module, argc, argv) < 0) - goto err_text_backend; + goto err_desktop; return IVI_SUCCEEDED; +err_desktop: + weston_desktop_destroy(shell->desktop); + err_text_backend: text_backend_destroy(shell->text_backend);