From 89df090e04ef9fc5aae29122df106b0347786fab Mon Sep 17 00:00:00 2001 From: Danny Al-Gaaf Date: Fri, 8 Feb 2013 17:17:59 +0100 Subject: [PATCH] rgw/rgw_rest.cc: fix 4K memory leak Fix 4K memory leak in case RGWClientIO::read() fails in read_all_chunked_input(). Error from cppcheck was: Checking src/rgw/rgw_rest.cc... [src/rgw/rgw_rest.cc:688]: (error) Memory leak: data Signed-off-by: Danny Al-Gaaf --- src/rgw/rgw_rest.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/rgw/rgw_rest.cc b/src/rgw/rgw_rest.cc index 72aab14c522b9..ab3927e7a627b 100644 --- a/src/rgw/rgw_rest.cc +++ b/src/rgw/rgw_rest.cc @@ -684,8 +684,10 @@ static int read_all_chunked_input(req_state *s, char **pdata, int *plen) int read_len = 0, len = 0; do { int r = s->cio->read(data + len, need_to_read, &read_len); - if (r < 0) + if (r < 0) { + free(data); return r; + } len += read_len; -- 2.39.5