weston-launch: Add some error reporting for weston-launch
This also avoids us passing (size_t)(-1 * sizeof(gid_t)) into malloc
diff --git a/src/weston-launch.c b/src/weston-launch.c
index cb69968..6d1f7c3 100644
--- a/src/weston-launch.c
+++ b/src/weston-launch.c
@@ -84,11 +84,18 @@
gid_t *groups;
n = getgroups(0, NULL);
+
+ if (n < 0) {
+ fprintf(stderr, "Unable to retrieve groups: %m\n");
+ return NULL;
+ }
+
groups = malloc(n * sizeof(gid_t));
if (!groups)
return NULL;
if (getgroups(n, groups) < 0) {
+ fprintf(stderr, "Unable to retrieve groups: %m\n");
free(groups);
return NULL;
}