From 538f5321841276704b657f206a0f97a79178e722 Mon Sep 17 00:00:00 2001 From: Karl Vestin Date: Wed, 12 Feb 2020 12:41:50 +0100 Subject: [PATCH] Added a free statement to release memory allocated for postbuf if the memory allocation for inbuf fails. Resolves an error level issue generated by the Codacy static code analysis. Codacy link: https://app.codacy.com/gh/epics-base/epics-base/file/42098735308/issues/source?bid=16430872&fileBranchId=16430872#l201 Launchpad bug: https://bugs.launchpad.net/epics-base/+bug/1862917 LP: #1862917 --- modules/database/src/std/link/lnkCalc.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/modules/database/src/std/link/lnkCalc.c b/modules/database/src/std/link/lnkCalc.c index 6f525059b1..5bcc485d77 100644 --- a/modules/database/src/std/link/lnkCalc.c +++ b/modules/database/src/std/link/lnkCalc.c @@ -127,8 +127,8 @@ static jlif_result lnkCalc_integer(jlink *pjlink, long long num) } if (clink->pstate != ps_args) { - return jlif_stop; errlogPrintf("lnkCalc: Unexpected integer %lld\n", num); + return jlif_stop; } if (clink->nArgs == CALCPERFORM_NARGS) { @@ -147,8 +147,8 @@ static jlif_result lnkCalc_double(jlink *pjlink, double num) calc_link *clink = CONTAINER(pjlink, struct calc_link, jlink); if (clink->pstate != ps_args) { - return jlif_stop; errlogPrintf("lnkCalc: Unexpected double %g\n", num); + return jlif_stop; } if (clink->nArgs == CALCPERFORM_NARGS) { @@ -196,8 +196,9 @@ static jlif_result lnkCalc_string(jlink *pjlink, const char *val, size_t len) } inbuf = malloc(len+1); - if(!inbuf) { + if(!inbuf) { errlogPrintf("lnkCalc: Out of memory\n"); + free(postbuf); return jlif_stop; } memcpy(inbuf, val, len);