[Libguestfs] [PATCH nbdkit] server: Initialize ‘buf’ to avoid GCC 9.0.1 warning.

Richard W.M. Jones rjones at redhat.com
Wed Apr 24 20:31:38 UTC 2019


GCC 9.0.1 isn't smart enough to work out that buf is initialized on
all the relevant paths that lead to backend->pwrite being called.  By
initializing it we can avoid the warning.

protocol.c: In function ‘protocol_recv_request_send_reply’:
protocol.c:241:9: error: ‘buf’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
  241 |     if (backend->pwrite (backend, conn, buf, count, offset, f, &err) == -1)
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
protocol.c:614:9: note: ‘buf’ was declared here
  614 |   char *buf;
      |         ^~~
---
 server/protocol.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/server/protocol.c b/server/protocol.c
index 6fd3b62..5033fd7 100644
--- a/server/protocol.c
+++ b/server/protocol.c
@@ -611,7 +611,7 @@ protocol_recv_request_send_reply (struct connection *conn)
   uint16_t cmd, flags;
   uint32_t magic, count, error = 0;
   uint64_t offset;
-  char *buf;
+  char *buf = NULL;
   CLEANUP_EXTENTS_FREE struct nbdkit_extents *extents = NULL;
 
   /* Read the request packet. */
-- 
2.20.1




More information about the Libguestfs mailing list