]> jfr.im git - irc/quakenet/newserv.git/commitdiff
Fix how wildcard realname glines are stored.
authorGunnar Beutner <redacted>
Thu, 18 Jul 2013 14:53:27 +0000 (16:53 +0200)
committerGunnar Beutner <redacted>
Thu, 18 Jul 2013 14:53:27 +0000 (16:53 +0200)
--HG--
branch : shroudtrusts

glines/glines_formats.c

index 6f98b6f3f9f5f6ee74eee8a3502f432739b4b3ea..4e58bccc58637af5cccd3ab742b00a271f5f790c 100644 (file)
@@ -81,7 +81,10 @@ gline *makegline(const char *mask) {
     }
 
     gl->flags |= GLINE_REALNAME;
-    gl->user = getsstring(mask + 2, REALLEN);
+
+    if (strcmp(mask + 2, "*") != 0)
+      gl->user = getsstring(mask + 2, REALLEN);
+
     return gl;
   }
 
@@ -122,11 +125,7 @@ char *glinetostring(gline *gl) {
   static char mask[512]; /* check */
 
   if (gl->flags & GLINE_REALNAME) {
-   if (gl->user)
-     snprintf(mask, sizeof(mask), "$R%s", gl->user->content);
-   else
-     strncpy(mask, "$R*", sizeof(mask));
-
+   snprintf(mask, sizeof(mask), "$R%s", (gl->user) ? gl->user->content : "*");
    return mask;
   }