fix error check in got_privsep_recv_blob()
diff --git a/lib/privsep.c b/lib/privsep.c
index be1744b..8da8e2c 100644
--- a/lib/privsep.c
+++ b/lib/privsep.c
@@ -810,8 +810,10 @@ got_privsep_recv_blob(size_t *size, struct imsgbuf *ibuf)
err = recv_imsg_error(&imsg, datalen);
break;
case GOT_IMSG_BLOB:
- if (datalen != sizeof(iblob))
+ if (datalen != sizeof(iblob)) {
err = got_error(GOT_ERR_PRIVSEP_LEN);
+ break;
+ }
memcpy(&iblob, imsg.data, sizeof(iblob));
*size = iblob.size;
/* Data has been written to file descriptor. */