From cc7cc5b092b3e801af4aa5bb8a8b5ccc3e915bd4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= <berrange@redhat.com>
Date: Wed, 2 Oct 2019 16:14:45 +0100
Subject: [PATCH] util: drop the stpcpy gnulib module
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

stpcpy returns a pointer to the end of the string just copied
which in theory makes it easier to then copy another string
after it. We only use stpcpy in one place though and that
is trivially rewritten to avoid stpcpy with no loss in code
clarity or efficiency.

Reviewed-by: Ján Tomko <jtomko@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
---
 bootstrap.conf      | 1 -
 src/util/virerror.c | 5 +++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/bootstrap.conf b/bootstrap.conf
index 9964231bb7..9ca1e6ddd7 100644
--- a/bootstrap.conf
+++ b/bootstrap.conf
@@ -96,7 +96,6 @@ snprintf
 socket
 stat-time
 stdarg
-stpcpy
 strchrnul
 strdup-posix
 strndup
diff --git a/src/util/virerror.c b/src/util/virerror.c
index 77f76a9abf..3bb9d1d32c 100644
--- a/src/util/virerror.c
+++ b/src/util/virerror.c
@@ -1367,8 +1367,9 @@ void virReportSystemErrorFull(int domcode,
 
         size_t len = strlen(errnoDetail);
         if (0 <= n && n + 2 + len < sizeof(msgDetailBuf)) {
-          char *p = msgDetailBuf + n;
-          stpcpy(stpcpy(p, ": "), errnoDetail);
+          strcpy(msgDetailBuf + n, ": ");
+          n += 2;
+          strcpy(msgDetailBuf + n, errnoDetail);
           msgDetail = msgDetailBuf;
         }
     }