[PATCH weston] compositor-x11: Always free output_mode on error.
Scott Moreau
oreaus at gmail.com
Mon Aug 6 00:27:06 PDT 2012
---
src/compositor-x11.c | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/src/compositor-x11.c b/src/compositor-x11.c
index e135143..0caa8dd 100644
--- a/src/compositor-x11.c
+++ b/src/compositor-x11.c
@@ -1183,29 +1183,28 @@ output_section_done(void *data)
if (!output || !output_name || !output_mode) {
free(output_name);
output_name = NULL;
- free(output_mode);
- output_mode = NULL;
- return;
+ goto err_free;
}
output->name = output_name;
if (output_name[0] != 'X') {
x11_free_configured_output(output);
- return;
+ goto err_free;
}
if (sscanf(output_mode, "%dx%d", &output->width, &output->height) != 2) {
weston_log("Invalid mode \"%s\" for output %s\n",
output_mode, output_name);
x11_free_configured_output(output);
- return;
+ goto err_free;
}
+ wl_list_insert(configured_output_list.prev, &output->link);
+
+err_free:
free(output_mode);
output_mode = NULL;
-
- wl_list_insert(configured_output_list.prev, &output->link);
}
WL_EXPORT struct weston_compositor *
--
1.7.11.2
More information about the wayland-devel
mailing list