Commit 8aac89a7e03403f2e1455eceadf817cded96c9e7

Stefan Sperling 2018-04-22T14:55:10

handle errno errors correctly in got_privsep_recv_obj()

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
diff --git a/lib/privsep.c b/lib/privsep.c
index 4b6246c..60217e1 100644
--- a/lib/privsep.c
+++ b/lib/privsep.c
@@ -167,9 +167,10 @@ got_privsep_recv_obj(struct got_object **obj, struct imsgbuf *ibuf)
 		}
 		memcpy(&ierr, imsg.data, sizeof(ierr));
 		if (ierr.code == GOT_ERR_ERRNO) {
-			static struct got_error err;
-			err.code = GOT_ERR_ERRNO;
-			err.msg = strerror(ierr.errno_code);
+			static struct got_error serr;
+			serr.code = GOT_ERR_ERRNO;
+			serr.msg = strerror(ierr.errno_code);
+			err = &serr;
 		} else
 			err = got_error(ierr.code);
 		break;