Simon Rose
beec00b403
Fix issue with compress record
...
The handling of N-to-M array compression was broken with the addition
of the partial buffer option, which broke the bounds check that was
being used.
Note that this also makes the partial buffer option more consistent;
if, for example, you have
```
record(compress, foo) {
field(ALG, "N to 1 Average")
field(INP, "bar NPP")
field(NSAM, 2)
field(N, 2)
field(PBUF, YES)
}
```
(with `bar` having, e.g. length 3), then this will now behave as
expected on both of the samples.
2024-05-29 09:15:35 -05:00
DW
4966baf423
fix sizv for printf & fix doc
2024-05-20 09:18:26 -04:00
Michael Davidsaver
e5b4829074
bound lso/lsi to limit of dbAddr::field_size
2024-05-19 11:57:19 -04:00
Simon Rose
839f764bcb
Clean up some potential memory leaks
...
The watchdog tasks are allocated, but not consistently removed. In
general this doesn't matter: they run in threads that will only
end when the process actually quits. For consistency and for the
purpose of future-proofing, I think there is value in having the
cleanup added in each case.
2024-05-15 09:26:09 -05:00
Simon Rose
4bb50fe664
Memory leak in caservertask.c
2024-05-15 09:26:09 -05:00
Ralph Lange
c77f32b19c
Merge pull request #482 from ericonr/calcout-docs
...
Fix calcout doc typo.
2024-05-03 04:04:41 +09:00
Érico Nogueira
66ce1c2076
Fix calcout doc typo.
2024-05-02 15:29:22 -03: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
Simon Rose
d9d35a4eab
Allow auto-declarations for dbdExpand.pl
2023-12-01 09:19:03 -06:00
Érico Nogueira
0cf8c934f9
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-11-29 09:44:03 -06:00
Michael Davidsaver
69d05fe5b0
Add ERROR to error messages
2023-11-26 15:25:09 -08:00
Michael Davidsaver
511bf1ffca
const-ify dbLink arrays
...
external code really should never be modifying pamaplinkType[]
2023-11-25 14:52:16 -08:00
Michael Davidsaver
7a65c001ce
update submodules
2023-11-15 07:31:53 -08:00
Michael Davidsaver
f2fe9d1203
bi "Raw Soft Channel" use MASK
...
If set, apply MASK to value read into RVAL.
2023-11-07 15:53:41 -08:00
Michael Davidsaver
ffc2d0f23a
incorrect error check on GetStdHandle()
...
Likely inconsequential as GetConsoleMode() should
return 0 when given an invalid handle.
2023-11-07 15:53:41 -08:00
Michael Davidsaver
a352865df9
print ANSI escapes to stderr
...
unconditionally print ANSI some escapes (to colorize errors)
to the stderr stream.
2023-11-07 15:53:22 -08:00
Michael Davidsaver
63740f2edd
colorize more errlog messages
2023-11-07 15:53:22 -08:00
Jeremy Lorelli
f4be9daf4d
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-11-07 15:17:04 -08:00
Michael Davidsaver
95bd5453d9
dbRecordField() add "did you mean..." hint for unknown field
2023-11-01 09:52:32 -05:00
Michael Davidsaver
eb3f8a004c
const-ify dbCopyEntry() and dbCopyEntryContents()
2023-11-01 09:52:32 -05:00
Michael Davidsaver
9f868a1074
avoid hang during concurrent db_cancel_event()
...
cf. fab8fd7102
2023-11-01 09:24:44 -05:00
Michael Davidsaver
b41787b6bf
doc
2023-10-22 17:42:36 -07:00
Michael Davidsaver
2ca70d3aa2
iocsh: keep history file
2023-10-22 17:42:36 -07:00
JJL772
395015aac4
Com: Make STATIC_ASSERT macro typedefs unique
2023-10-22 17:42:36 -07:00
Michael Davidsaver
92cae86ff2
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-10-22 17:42:36 -07:00
Jack Harper
49ea46ee5e
iocsh: add comment to cvtArg explaining default iocsharg behaviour
2023-10-22 17:42:36 -07:00
Michael Davidsaver
df908f299b
remove unused local
2023-10-22 17:42:36 -07:00
AlexWells
6dec68554c
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-10-22 17:42:36 -07:00
Michael Davidsaver
badd8f518d
update modules/pvData
2023-10-22 17:42:35 -07:00