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;
 	}