Fix potential memory leak
[src/agl-compositor.git] / src / compositor.c
index 926cb2c..fd5f5a6 100644 (file)
@@ -754,6 +754,10 @@ ivi_enable_remote_outputs(struct ivi_compositor *ivi)
                }
 
                ivi_output = zalloc(sizeof(*ivi_output));
+               if (!ivi_output) {
+                       free(_name);
+                       continue;
+               }
 
                ivi_output->ivi = ivi;
                ivi_output->name = _name;
@@ -806,6 +810,10 @@ ivi_enable_waltham_outputs(struct ivi_compositor *ivi)
                }
 
                ivi_output = zalloc(sizeof(*ivi_output));
+               if (!ivi_output) {
+                       free(_name);
+                       continue;
+               }
 
                ivi_output->ivi = ivi;
                ivi_output->name = _name;
@@ -1760,6 +1768,11 @@ int wet_main(int argc, char *argv[])
        wl_display_destroy_clients(display);
 
 error_compositor:
+       free(backend);
+       backend = NULL;
+       free(modules);
+       modules = NULL;
+
        weston_compositor_tear_down(ivi.compositor);
 
        weston_compositor_log_scope_destroy(log_scope);