From: Amos Jeffries Date: Fri, 13 Jan 2017 04:41:10 +0000 (+1300) Subject: Fix missing helper.cc callback check X-Git-Tag: M-staged-PR71~309 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=090a7447108415e034b8a4d1a6b5a2949297e946;p=thirdparty%2Fsquid.git Fix missing helper.cc callback check Calls to cbdataReferenceValidDone() need to be checked for true result before calling the callback. The pointer may be NULL. Detected by Coverity Scan. Issue 1398569. --- diff --git a/src/helper.cc b/src/helper.cc index ae8355c711..02f4f53b48 100644 --- a/src/helper.cc +++ b/src/helper.cc @@ -906,8 +906,8 @@ helperReturnBuffer(helper_server * srv, helper * hlp, char * msg, size_t msgSize HLPCB *callback = r->request.callback; r->request.callback = nullptr; void *cbdata = nullptr; - cbdataReferenceValidDone(r->request.data, &cbdata); - callback(cbdata, r->reply); + if (cbdataReferenceValidDone(r->request.data, &cbdata)) + callback(cbdata, r->reply); } }