]> git.ipfire.org Git - thirdparty/coreutils.git/commitdiff
who: simplify port to GCC 8
authorPaul Eggert <eggert@cs.ucla.edu>
Mon, 14 May 2018 20:49:35 +0000 (13:49 -0700)
committerPaul Eggert <eggert@cs.ucla.edu>
Mon, 14 May 2018 20:49:58 +0000 (13:49 -0700)
* src/who.c (make_id_equals_comment): Use simpler workaround
for GCC bug 85602.  Suggested by Martin Sebor in:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85602#c3

src/who.c

index 3719baec589d5302d1da4d1afce6c1cb7361304a..1bfe4f11d5dba69a6a0598fdc0e160591726269a 100644 (file)
--- a/src/who.c
+++ b/src/who.c
@@ -447,14 +447,11 @@ print_boottime (const STRUCT_UTMP *utmp_ent)
 static char *
 make_id_equals_comment (STRUCT_UTMP const *utmp_ent)
 {
-  char const *ideq = _("id=");
-  char const *ut_id = UT_ID (utmp_ent);
-  size_t ideqlen = strlen (ideq);
-  size_t ut_idlen = strnlen (ut_id, sizeof UT_ID (utmp_ent));
-  char *comment = xmalloc (ideqlen + ut_idlen + 1);
-  char *rhs = mempcpy (comment, ideq, ideqlen);
-  char *z = mempcpy (rhs, ut_id, ut_idlen);
-  *z = '\0';
+  size_t utmpsize = sizeof UT_ID (utmp_ent);
+  char *comment = xmalloc (strlen (_("id=")) + utmpsize + 1);
+
+  strcpy (comment, _("id="));
+  strncat (comment, UT_ID (utmp_ent), utmpsize);
   return comment;
 }