From 52b71715760964a8d04e785b7c24a8808fa848ec Mon Sep 17 00:00:00 2001 From: Andrew Johnson Date: Fri, 10 Nov 2006 22:43:04 +0000 Subject: [PATCH] Moved testMain.h into libCom/misc, since db/test is built before libCom/test. --- src/libCom/Makefile | 1 + src/libCom/{test => misc}/testMain.h | 0 src/libCom/osi/epicsThread.cpp | 26 ++++++++++---------------- src/libCom/test/Makefile | 4 +--- 4 files changed, 12 insertions(+), 19 deletions(-) rename src/libCom/{test => misc}/testMain.h (100%) diff --git a/src/libCom/Makefile b/src/libCom/Makefile index dac8dbe3f..29454a194 100644 --- a/src/libCom/Makefile +++ b/src/libCom/Makefile @@ -131,6 +131,7 @@ INC += locationException.h INC += ipAddrToAsciiAsynchronous.h INC += compilerDependencies.h INC += epicsUnitTest.h +INC += testMain.h SRCS += aToIPAddr.c SRCS += adjustment.c SRCS += cantProceed.c diff --git a/src/libCom/test/testMain.h b/src/libCom/misc/testMain.h similarity index 100% rename from src/libCom/test/testMain.h rename to src/libCom/misc/testMain.h diff --git a/src/libCom/osi/epicsThread.cpp b/src/libCom/osi/epicsThread.cpp index 74a191fc0..ae72294cc 100644 --- a/src/libCom/osi/epicsThread.cpp +++ b/src/libCom/osi/epicsThread.cpp @@ -286,36 +286,30 @@ void epicsThreadPrivateBase::throwUnableToCreateThreadPrivate () extern "C" { static epicsThreadOnceId okToBlockOnce = EPICS_THREAD_ONCE_INIT; epicsThreadPrivateId okToBlockPrivate; - typedef struct okToBlockStruct okToBlockStruct; - struct okToBlockStruct { - int okToBlock; - }; - static okToBlockStruct okToBlockNo = {0}; - static okToBlockStruct okToBlockYes = {1}; + static const int okToBlockNo = 0; + static const int okToBlockYes = 1; static void epicsThreadOnceIdInit(void *) { okToBlockPrivate = epicsThreadPrivateCreate(); } - int epicsShareAPI epicsThreadIsOkToBlock(void) { - okToBlockStruct *pokToBlock; - void *arg = 0; - epicsThreadOnce(&okToBlockOnce,epicsThreadOnceIdInit,arg); - pokToBlock = (okToBlockStruct*)epicsThreadPrivateGet(okToBlockPrivate); - return (pokToBlock ? pokToBlock->okToBlock : 0); + const int *pokToBlock; + epicsThreadOnce(&okToBlockOnce, epicsThreadOnceIdInit, NULL); + pokToBlock = (int *) epicsThreadPrivateGet(okToBlockPrivate); + return (pokToBlock ? *pokToBlock : 0); } void epicsShareAPI epicsThreadSetOkToBlock(int isOkToBlock) { - okToBlockStruct *pokToBlock; - void *arg = 0; - epicsThreadOnce(&okToBlockOnce,epicsThreadOnceIdInit,arg); + const int *pokToBlock; + epicsThreadOnce(&okToBlockOnce, epicsThreadOnceIdInit, NULL); pokToBlock = (isOkToBlock) ? &okToBlockYes : &okToBlockNo; - epicsThreadPrivateSet(okToBlockPrivate,pokToBlock); + epicsThreadPrivateSet(okToBlockPrivate, (void *)pokToBlock); } + epicsThreadId epicsShareAPI epicsThreadMustCreate ( const char *name, unsigned int priority, unsigned int stackSize, EPICSTHREADFUNC funptr,void *parm) diff --git a/src/libCom/test/Makefile b/src/libCom/test/Makefile index 2ca5d122e..005e51d62 100644 --- a/src/libCom/test/Makefile +++ b/src/libCom/test/Makefile @@ -10,9 +10,7 @@ TOP=../../.. include $(TOP)/configure/CONFIG -INC += testMain.h - -PROD_LIBS += Com +TESTPROD_LIBS += Com TESTPROD_HOST += epicsUnitTestTest epicsUnitTestTest_SRCS += epicsUnitTestTest.c