Don't use epicsMutexMustLock() in msgbufGetFree().
When we're shutting down, the pvtData.msgQueueLock gets destroyed.
This makes msgbufGetFree() return NULL if the lock is dead.
The epicsMutexMustLock() routine asserts(), which recurses...
Fixed a bug reported by Michael Abbott, NORD goes -ve.
Modified soft channel support so when INP="" it extracts the relevent
sub-array of the existing VAL field; use an external put to set the
array. This lets the other records pull a series of values from the
record in sequence.
Cygwin 1.7 changed the socket shutdown method from BothShutdown
to Close. This fix looks at the cygwin version to work out what
value to return from esscimqi().
o gnu compiler for windows doesnt support well dll exporting individual functions from a class
in debug builds so I switched to exporting the entire interface class in several places
o fixed several places in ca lib where include of epicsTimer.h wasnt properly ifdef'd so
that it is imported by ca header files
--- these issues were already fixed on cvs main trunk ---
Made epicsThreadOnceTest more deterministic, replacing an
epicsThreadSleep() with epicsEventMustWait(), and added a diagnostic
message before running the thread recurse test.
Eric added a series of checks to epicsEventTest.cpp which ensure that
epicsEventSignal() only wakes one waiting thread.
This fixes a bug introduced with the dynamic-array branch.
The new version of db_get_field() was using the dbr_size_n() macro to
calculate the offset to the start of the buffer area to be zeroed, but
when nRequest is zero this gives the wrong result; the dbr_ structures
always contain at least one value element, and dbr_size_n() thus has
to include that in its size calculation.
This fixes the perl compilation failures of fullPathName.pl
that occur before the src/tools directory has been built, and
ensures that the other tools that use EPICS modules also work.
This allows calc and calcout record expressions to be up to
79 characters long, and shortens the postfix buffer needed by
introducing integer literals. Also removes the length limit
for access security CALC expressions.
* Updated the ReleaseChecklist document for Bazaar
* Replaced all RCS $Id$ and $header$ keywords with $Revision-Id$
as supported by the Bazaar Keywords plug-in
* Changed a few names in CONFIG_BASE_VERSION and epicsVersion.h
* Removed various extraneous keywords and non-ASCII characters
Use DEV instead of CVS in names.
Lower-case the -rc<n> status strings.
Rename CVS_DATE to COMMIT_DATE.
No Bazaar equivalent to the CVS tag $Name$ exists.
Modernize and "use strict" in the Perl code.
We allocate a new postfix buffer for each expression, so there is no
need to limit the expression length, just allocate a buffer big enough
for the expression given.
Renamed LITERAL to LITERAL_DOUBLE and added LITERAL_INT.
postfix() only uses LITERAL_INT if the results are identical.
Adjusted INFIX_TO_POSTFIX_SIZE() macro to match.
Cleaned up some other internal issues.