From 44c736dcb84860d3ec0df150dbc568a0c743a23c Mon Sep 17 00:00:00 2001
From: Michael Tuexen <tuexen@fh-muenster.de>
Date: Sat, 7 Oct 2017 14:46:00 +0200
Subject: [PATCH] Fix CID 187222.

---
 gtests/net/packetdrill/wire_server.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/gtests/net/packetdrill/wire_server.c b/gtests/net/packetdrill/wire_server.c
index 25e3d372..6e722dc7 100644
--- a/gtests/net/packetdrill/wire_server.c
+++ b/gtests/net/packetdrill/wire_server.c
@@ -290,6 +290,7 @@ static int wire_server_send_packets_done(struct wire_server *wire_server,
 					 const char *error)
 {
 	struct wire_packets_done done;
+	int status;
 	int error_len = strlen(error) + 1;	/* +1 for '\0' */
 	int buf_len = sizeof(done) + error_len;
 	char *buf = malloc(buf_len);
@@ -303,10 +304,13 @@ static int wire_server_send_packets_done(struct wire_server *wire_server,
 			    WIRE_PACKETS_DONE,
 			    buf, buf_len)) {
 		fprintf(stderr, "error sending WIRE_PACKETS_DONE\n");
-		return STATUS_ERR;
+		status = STATUS_ERR;
+	} else {
+		status = STATUS_OK;
 	}
 
-	return STATUS_OK;
+	free(buf);
+	return status;
 }
 
 /* Coordinate with the wire client. See wire_client_next_event(). */
-- 
GitLab