From a5b8b0b890a8f2c68b4e908969b569a39fbef177 Mon Sep 17 00:00:00 2001 From: Andrew Johnson Date: Tue, 24 May 2016 11:12:25 +0200 Subject: [PATCH 1/2] Use fabs() in calcPerform --- src/libCom/calc/calcPerform.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libCom/calc/calcPerform.c b/src/libCom/calc/calcPerform.c index e53d860e2..b9b28dd3a 100644 --- a/src/libCom/calc/calcPerform.c +++ b/src/libCom/calc/calcPerform.c @@ -155,7 +155,7 @@ epicsShareFunc long break; case ABS_VAL: - if (*ptop < 0.0) *ptop = - *ptop; + *ptop = fabs(*ptop); break; case EXP: From 9c3ed1bfe20ab4f9e3beda32791ba0e48025375c Mon Sep 17 00:00:00 2001 From: Ralph Lange Date: Thu, 26 May 2016 13:13:29 +0200 Subject: [PATCH 2/2] catools: fix escape handling when sending long strings --- src/catools/caput.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/catools/caput.c b/src/catools/caput.c index 9e1adcd46..02182932d 100644 --- a/src/catools/caput.c +++ b/src/catools/caput.c @@ -490,14 +490,13 @@ int main (int argc, char *argv[]) } else { /* Not an ENUM */ if (charArrAsStr) { - count = len; dbrType = DBR_CHAR; - ebuf = calloc(strlen(cbuf)+1, sizeof(char)); + ebuf = calloc(len, sizeof(char)); if(!ebuf) { fprintf(stderr, "Memory allocation failed\n"); return 1; } - epicsStrnRawFromEscaped(ebuf, strlen(cbuf)+1, cbuf, strlen(cbuf)); + count = epicsStrnRawFromEscaped(ebuf, len, cbuf, len-1) + 1; } else { for (i = 0; i < count; ++i) { epicsStrnRawFromEscaped(sbuf[i], sizeof(EpicsStr), *(argv+optind+i), sizeof(EpicsStr));