1 index 5f64e72d..dc8e6f1d 100644
2 --- a/ivi-shell/ivi-shell.c
3 +++ b/ivi-shell/ivi-shell.c
4 @@ -677,10 +677,14 @@ wet_shell_init(struct weston_compositor *compositor,
5 if (!shell->text_backend)
8 + shell->desktop = weston_desktop_create(compositor, &shell_desktop_api, shell);
10 + goto err_text_backend;
12 if (wl_global_create(compositor->wl_display,
13 &ivi_application_interface, 1,
14 shell, bind_ivi_application) == NULL)
15 - goto err_text_backend;
18 ivi_layout_init_with_compositor(compositor);
19 /* TODO ivi_layout_destroy should be implemented, since multiple lists
20 @@ -690,10 +694,13 @@ wet_shell_init(struct weston_compositor *compositor,
21 /* Call module_init of ivi-modules which are defined in weston.ini */
22 if (load_controller_modules(compositor, setting.ivi_module,
24 - goto err_text_backend;
30 + weston_desktop_destroy(shell->desktop);
33 text_backend_destroy(shell->text_backend);