87d492bffd
Merge branch '7.0' into PSI-7.0
2024-04-30 14:40:00 +02:00
Érico Nogueira
1a9dc993c1
Fix gmtime messages in epicsTimeZoneTest.
2024-04-29 15:10:47 -07:00
Michael Davidsaver
cb1571783b
link.h wrong type
...
Change to unsigned incorrectly increased size.
e88a186fc3
2024-04-02 08:35:25 -07:00
Freddie Akeroyd
5dfc6caf3c
Accept should return SOCKET rather than int
2024-03-06 09:48:26 -06:00
Freddie Akeroyd
4720b61c1f
Move call to setThreadName()
...
The call to setThreadName() is moved to avoid a race condition that
can happen with very short lived processes. If the process terminates
very quickly e.g. is a google test runner or the msi.exe command
called from a Makefile during a build, then very occasionally a
crash can occur during process termination if setThreadName() when called
from the newly created thread. This looks to be becauae the DLL it is
trying to call gets unloaded between it getting a handle to the DLL
and making the call. Moving the setThreadName() call to the creating
thread avoids this problem. The issue was only ever seen with statically
linked epics executables, I am unsure if the way a DLL based epics
program unloads might avoid this, or just make it less likely but
still possible. As mentioned above, the issue will only ever occur
to threads that are created during process termination and so would
not affect running IOCs
2024-02-21 09:59:36 -06:00
4383cf291e
allow macros with defaults in dbLoadRecords without substitutions
2024-02-21 09:50:03 -06:00
Michael Davidsaver
07cbf00187
posix: warn on epicsSocketCreate() without osiSockAttach()
2023-12-22 10:26:28 -08:00
Michael Davidsaver
c75b9ad0be
add dbRecordNode::order
...
Keep track of parse order of record instances.
2023-12-22 10:26:28 -08:00
Michael Davidsaver
87acb98d1e
ca: remove hostname length limit when parsing address lists
2023-12-22 10:26:28 -08:00
Michael Davidsaver
403e203325
quieting clang-tidy, use unsigned
...
places where we shouldn't be negative anyway
2023-12-22 10:26:28 -08:00
Michael Davidsaver
a7a56912eb
default/epicsMessageQueue: initialize threadNode
2023-12-22 10:26:28 -08:00
Michael Davidsaver
fe4a32e425
default/epicsMessageQueue: avoid volatile flag
...
Only one place where eventSent was accessed
without locking. Move this load earlier.
2023-12-22 10:26:28 -08:00
Michael Davidsaver
823386573f
ipAddrToAsciiGlobal::run() keep scratch buffer as local
2023-12-22 10:26:28 -08:00
Michael Davidsaver
ea8247586f
adjustToWorstCaseAlignment() simplify
...
Add some STATIC_ASSERT to check assumptions.
Only in-tree use is freeListLib to ensure chunks in
a malloc()'d block are aligned.
2023-12-22 10:26:28 -08:00
Michael Davidsaver
e88a186fc3
make link::flags bit field unsigned
2023-12-22 10:26:28 -08:00
Andrew Johnson
8998341588
Update version numbers and submodules after release
2023-12-15 13:03:57 -06:00
Andrew Johnson
477e36b1f0
Update submodules to tagged versions
2023-12-14 16:42:10 -06:00
Andrew Johnson
fad830bd14
Remove example sub-module
2023-12-14 16:42:10 -06:00
Andrew Johnson
331df3d7e4
UNRELEASED => 7.0.8
2023-12-14 16:42:10 -06:00
Andrew Johnson
2e6fd505d2
Use epicsSnprintf() for old MSVC compilers
2023-12-14 11:31:36 -06:00
Andrew Johnson
5ecf7d18a8
Clean up Clang 15 sprintf() warnings in libcom and ca
2023-12-13 13:34:25 -06:00
Andrew Johnson
56dbc949ff
Add declarations to flex, cleans up Clang 15 warnings.
2023-12-12 13:44:08 -06:00
Simon Rose
6a369acd0b
Add newline to help text
2023-12-05 08:05:12 -08:00
Michael Davidsaver
db2482117d
rationalize osdMutex
...
Avoids split allocation.
Eliminates special case free-list.
win32: eliminate pre-XP
rtems-score: eliminate non-fast
2023-12-04 11:04:51 +01:00
122ca4e1d3
change PROC to ASL0
2023-12-01 16:51:49 +01:00
Érico Nogueira
68fea5c2ca
Set ASL0 for mbboDirect Bx fields.
...
Since the record's VAL field is ASL0, it doesn't make sense to gate
writes into the Bx fields with ASL1.
2023-12-01 16:49:41 +01:00
Michael Davidsaver
3f03efe7fe
Add ERROR to error messages
2023-12-01 16:49:30 +01:00
Michael Davidsaver
98dc97022a
const-ify dbLink arrays
...
external code really should never be modifying pamaplinkType[]
2023-12-01 16:49:18 +01:00
Michael Davidsaver
69a184ee1d
update submodules
2023-12-01 16:48:54 +01:00
Michael Davidsaver
27ad623d68
bi "Raw Soft Channel" use MASK
...
If set, apply MASK to value read into RVAL.
2023-12-01 16:48:06 +01:00
Michael Davidsaver
1b23701946
incorrect error check on GetStdHandle()
...
Likely inconsequential as GetConsoleMode() should
return 0 when given an invalid handle.
2023-12-01 16:47:45 +01:00
Michael Davidsaver
0502fe25e4
print ANSI escapes to stderr
...
unconditionally print ANSI some escapes (to colorize errors)
to the stderr stream.
2023-12-01 16:47:18 +01:00
Michael Davidsaver
77a37781af
colorize more errlog messages
2023-12-01 16:38:54 +01:00
Jeremy Lorelli
ba21e655df
Null check callback function in callbackRequest
...
Previously, calling callbackRequest(pcallback), where pcallback->callback
is NULL, would result in a crash on one of the callback threads.
2023-12-01 16:36:43 +01:00
Michael Davidsaver
f4cb31d5d5
dbRecordField() add "did you mean..." hint for unknown field
2023-12-01 16:36:24 +01:00
Michael Davidsaver
ab4e687816
const-ify dbCopyEntry() and dbCopyEntryContents()
2023-12-01 16:36:12 +01:00
Michael Davidsaver
1d1926eaf3
avoid hang during concurrent db_cancel_event()
...
cf. fab8fd7102
2023-12-01 16:36:03 +01:00
Michael Davidsaver
d31ba6ade3
doc
2023-12-01 16:35:55 +01:00
Michael Davidsaver
5a5535aa5b
iocsh: keep history file
2023-12-01 16:35:36 +01:00
JJL772
de61390049
Com: Make STATIC_ASSERT macro typedefs unique
2023-12-01 16:35:29 +01:00
Michael Davidsaver
304d8217d9
dbRecordsOnceOnly allow append only with "*"
...
with
> record(ai, "myrec") {}
dbRecordsOnceOnly!=0 currently disallows appending fields with either form:
> record("*", "myrec") {} # error
> record(ai, "myrec") {} # error
Change the meaning such that dbRecordsOnceOnly!=0
allways allows appending when explicitly intended (rtype "*").
> record("*", "myrec") {} # allowed
> record(ai, "myrec") {} # error
Also clearly label this parse error.
2023-12-01 16:35:18 +01:00
Jack Harper
2c95dc91e9
iocsh: add comment to cvtArg explaining default iocsharg behaviour
2023-12-01 16:34:35 +01:00
Michael Davidsaver
8cc15c6e68
remove unused local
2023-12-01 16:34:24 +01:00
AlexWells
680e1734a4
iocsh: Add underline separator between help outputs
...
Also tweaks the overall format of the message a bit.
Add tests for new help output format
2023-12-01 16:34:04 +01:00
4aea7de032
update modules/pvData
2023-12-01 16:33:42 +01:00
Simon Rose
d9d35a4eab
Allow auto-declarations for dbdExpand.pl
2023-12-01 09:19:03 -06:00
Jeremy Lorelli
67e669c5e5
libCom: Fix buggy pointer dereference in postfix()
2023-12-01 16:02:34 +01:00
Michael Davidsaver
e291ca0a03
Fix compile w/ vs2012
2023-12-01 15:04:24 +01:00
Emilio Perez
5b84a86ccd
Allow adding error symbols after early initialization
...
This was acomplished by making errSymbolAdd add the error symbol directly
into the global hash table and removing errnumlist which is not needed
anymore.
Unit tests were added for checking the following cases:
- Adding a valid symbol and checking that it exists (fixed by this change)
- Getting an existing error symbol
- Getting a non existing error symbol
- Adding an invalid error symbol (fixed by this change)
- Adding an error symbol with a code that already
exists (fixed by this change)
Therefore, issue #268 was fixed
error: statically allocate error symbol hash table
This will allow calling errSymbolAdd before errSymBld, therefore, a
function adding error symbols can now be run before iocInit or errlogInit
error: add a constant for the minimum module number
Make adding an identical error symbol not fail
A test case was also added which test that adding an error symbol
with same error code and message as one added before will not fail
Add locking to error symbol table
This protects the cases of:
- simultaneously adding and requesting of an error symbol
- simultaneously adding many error symbols
Update release notes regarding adding error symbols
2023-12-01 15:03:00 +01:00
Michael Davidsaver
cb6442da71
epicsThreadShow() zombies
...
Flag when the thread has returned, but the tracking
struct is still around. eg. in need of joining.
2023-12-01 15:01:10 +01:00