diff --git a/src/ca/legacy/pcas/generic/casStrmClient.cc b/src/ca/legacy/pcas/generic/casStrmClient.cc index 8db94adb3..e23256d3f 100644 --- a/src/ca/legacy/pcas/generic/casStrmClient.cc +++ b/src/ca/legacy/pcas/generic/casStrmClient.cc @@ -856,8 +856,20 @@ caStatus casStrmClient::monitorResponse ( casChannelI & chan, const caHdrLargeArray & msg, const gdd & desc, const caStatus completionStatus ) { + aitUint32 elementCount = 0; + if (desc.isContainer()) { + aitUint32 index; + int gdds = gddApplicationTypeTable::app_table.mapAppToIndex + ( desc.applicationType(), gddAppType_value, index ); + if ( gdds ) { + return S_cas_badType; + } + elementCount = desc.getDD(index)->getDataSizeElements(); + } else { + elementCount = desc.getDataSizeElements(); + } ca_uint32_t count = (msg.m_count == 0) ? - (ca_uint32_t)desc.getDataSizeElements() : + (ca_uint32_t)elementCount : msg.m_count; void * pPayload = 0; diff --git a/src/libCom/test/epicsStdioTest.c b/src/libCom/test/epicsStdioTest.c index d649aa061..952c0c5ae 100644 --- a/src/libCom/test/epicsStdioTest.c +++ b/src/libCom/test/epicsStdioTest.c @@ -37,7 +37,14 @@ static void testEpicsSnprintf(void) { const char *expected = exbuffer; int size; int rtn, rlen; - + +#ifdef _WIN32 +#if (defined(_MSC_VER) && _MSC_VER < 1900) || \ + (defined(_MINGW) && defined(_TWO_DIGIT_EXPONENT)) + _set_output_format(_TWO_DIGIT_EXPONENT); +#endif +#endif + sprintf(exbuffer, format, ivalue, fvalue, svalue); rlen = strlen(expected)+1; @@ -121,11 +128,7 @@ void testStdoutRedir (const char *report) MAIN(epicsStdioTest) { -#ifdef _WIN32 - testPlan(166); -#else testPlan(163); -#endif testEpicsSnprintf(); testStdoutRedir("report"); return testDone(); diff --git a/src/template/base/top/configure/CONFIG_SITE b/src/template/base/top/configure/CONFIG_SITE index 208aa7e68..212485ebe 100644 --- a/src/template/base/top/configure/CONFIG_SITE +++ b/src/template/base/top/configure/CONFIG_SITE @@ -34,3 +34,10 @@ CHECK_RELEASE = YES # or CROSS_OPT settings from base/configure/CONFIG_SITE #HOST_OPT = NO #CROSS_OPT = NO + +# These allow developers to override the CONFIG_SITE variable +# settings without having to modify the configure/CONFIG_SITE +# file itself. +-include $(TOP)/../CONFIG_SITE.local +-include $(TOP)/configure/CONFIG_SITE.local + diff --git a/src/template/base/top/configure/RELEASE b/src/template/base/top/configure/RELEASE index ba28bcb26..dbd742b45 100644 --- a/src/template/base/top/configure/RELEASE +++ b/src/template/base/top/configure/RELEASE @@ -35,3 +35,9 @@ EPICS_BASE = _EPICS_BASE_ # Set RULES here if you want to use build rules from somewhere # other than EPICS_BASE: #RULES = $(MODULES)/build-rules + +# These allow developers to override the RELEASE variable settings +# without having to modify the configure/RELEASE file itself. +-include $(TOP)/../RELEASE.local +-include $(TOP)/configure/RELEASE.local +