Pushed with these additional tweaks:

diff --git a/lib/userspec.c b/lib/userspec.c
index 760b007..e115552 100644
--- a/lib/userspec.c
+++ b/lib/userspec.c
@@ -114,7 +114,7 @@ parse_with_separator (char const *spec, char const *separato
   char const *g;
   char *gname = NULL;
   uid_t unum = *uid;
-  gid_t gnum = gid ? *gid : 0;
+  gid_t gnum = gid ? *gid : -1;

   error_msg = NULL;
   if (username)
diff --git a/tests/test-userspec.c b/tests/test-userspec.c
index d6e0161..8e3672f 100644
--- a/tests/test-userspec.c
+++ b/tests/test-userspec.c
@@ -184,7 +184,6 @@ main (void)
   /* Ensure NULL parameters are ignored.  */
   {
     uid_t uid = (uid_t) -1;
-    gid_t gid = (gid_t) -1;
     char const *diag = parse_user_spec ("", &uid, NULL, NULL, NULL);
     if (diag)
       {

thanks,
Pádraig.

Reply via email to