From 7afd4e39eb4d9ee5cb5ef7a8a9be11945c7f5515 Mon Sep 17 00:00:00 2001 From: Riccardo Magliocchetti Date: Wed, 30 Jan 2013 17:43:45 +0100 Subject: [PATCH] proto/zeromq: Don't leak ub on write error in uwsgi_proto_zeromq_writev_header Reported by Coverity as CID #971247. --- proto/zeromq.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/proto/zeromq.c b/proto/zeromq.c index 905ed430..d3329e40 100644 --- a/proto/zeromq.c +++ b/proto/zeromq.c @@ -603,6 +603,7 @@ ssize_t uwsgi_proto_zeromq_writev_header(struct wsgi_request *wsgi_req, struct i for (i = 0; i < (int) iov_len; i++) { if (uwsgi_buffer_append(ub, iovec[i].iov_base, iovec[i].iov_len)) { wsgi_req->write_errors++; + uwsgi_buffer_destroy(ub); return 0; } } @@ -610,6 +611,7 @@ ssize_t uwsgi_proto_zeromq_writev_header(struct wsgi_request *wsgi_req, struct i len = uwsgi_proto_zeromq_write(wsgi_req, ub->buf, ub->pos); if (len <= 0) { wsgi_req->write_errors++; + uwsgi_buffer_destroy(ub); return 0; }