73f80cced9
Merge branch '7.0' into PSI-7.0
2023-08-21 14:14:16 +02:00
Ralph Lange
6636b4b9e7
libCom: check calloc() failure in RTEMS-posix/osdMessageQueue.c
2023-07-22 08:35:59 -07:00
Ralph Lange
b51d1de283
libCom: fix possible memory leak in RTEMS-posix/osdMessageQueue.c
...
found by static code analysis (cppcheck @ sonarqube)
2023-07-22 08:35:59 -07:00
Ralph Lange
38c99df2e0
libCom: fix possible memory leaks in iocLogServer.c
...
found by static code analysis (cppcheck @ sonarqube)
2023-07-22 08:35:59 -07:00
Ralph Lange
688195a273
libCom: handle realloc() failures correctly in macEnv.c
...
found by static code analysis (cppcheck @ sonarqube)
2023-07-22 08:35:59 -07:00
AlexWells
f488765631
Add tests for PR#310
...
Also add missing NULL/empty checks
2023-07-22 08:28:25 -07:00
Sebastian Marsching
3a2d225682
Detect error in fprintf and return ( fixes #309 ).
...
fprintf returns a negative value in order to signal an error. We have to
detect this situation in epicsStrPrintEscaped and return a negative
when fprintf returns a negative value in order to give the calling code
a chance to detect this situation.
The old implementation (of simply accumulating the return values of
fprintf) was wrong anyway, because it would not only lead to an error in
fprintf to be lost but would also cause the returned number to be too
small (not representing the actual number of bytes written) in such a
case.
The only case where the old implementation would work correctly was when
all calls to fprintf succeeded or all these calls failed.
2023-07-22 08:27:32 -07:00
Doug Murray
1d056c6fe4
Add support for CA tools timeout from environment variable EPICS_CLI_TIMEOUT
2023-07-22 08:24:22 -07:00
0f086126b7
fix escaped quotes in quoted strings
Check EditorConfig / editorconfig (push) Failing after 1s
Base / Cross linux-aarch64 (push) Failing after 2s
Base / Cross linux-arm gnueabi (push) Failing after 1s
Base / Cross linux-arm gnueabihf (push) Failing after 2s
Base / Fedora-33 (push) Failing after 2s
Base / CentOS-7 (push) Failing after 5s
Base / Fedora-latest (push) Failing after 1s
Base / Win2019 mingw (push) Has been cancelled
Base / Ub-20 clang-10 C++11 (push) Has been cancelled
Base / MacOS clang-12 (push) Has been cancelled
Base / Ub-20 clang-10 (push) Has been cancelled
Base / Ub-20 gcc-9 + RT-5.1 beatnik (push) Has been cancelled
Base / Ub-20 gcc-9 + RT-4.10 (push) Has been cancelled
Base / Ub-20 gcc-9 + RT-4.9 (push) Has been cancelled
Base / Ub-20 gcc-9 + RT-5.1 pc686 (push) Has been cancelled
Base / Ub-20 gcc-9 + RT-5.1 xilinx_zynq_a9_qemu (push) Has been cancelled
Base / Ub-20 gcc-9 + RT-5.1 uC5282 (push) Has been cancelled
Base / Ub-20 gcc-9 + MinGW (push) Has been cancelled
Base / Ub-20 gcc-9 unsigned char (push) Has been cancelled
Base / Ub-20 gcc-9 C++11, static (push) Has been cancelled
Base / Ub-20 gcc-9 + MinGW, static (push) Has been cancelled
Base / Win2019 MSC-19 (push) Has been cancelled
Base / Win2019 MSC-19, debug (push) Has been cancelled
Base / Win2019 MSC-19, static (push) Has been cancelled
2023-06-22 16:37:29 +02:00
5b058d7d27
Merge branch '7.0' into PSI-7.0
2023-06-22 16:36:32 +02:00
Michael Davidsaver
42604fc794
Allow clang with GCC compilerSpecific.h
...
Check EditorConfig / editorconfig (push) Failing after 1s
Base / Cross linux-aarch64 (push) Failing after 2s
Base / Cross linux-arm gnueabi (push) Failing after 1s
Base / Cross linux-arm gnueabihf (push) Failing after 2s
Base / CentOS-7 (push) Failing after 1s
Base / Fedora-33 (push) Failing after 2s
Base / Fedora-latest (push) Failing after 1s
Base / Ub-20 clang-10 C++11 (push) Has been cancelled
Base / Ub-20 gcc-9 + RT-4.10 (push) Has been cancelled
Base / Ub-20 gcc-9 + RT-5.1 xilinx_zynq_a9_qemu (push) Has been cancelled
Base / Win2019 mingw (push) Has been cancelled
Base / Ub-20 gcc-9 + MinGW (push) Has been cancelled
Base / Ub-20 gcc-9 unsigned char (push) Has been cancelled
Base / Ub-20 gcc-9 C++11, static (push) Has been cancelled
Base / Ub-20 gcc-9 + MinGW, static (push) Has been cancelled
Base / MacOS clang-12 (push) Has been cancelled
Base / Ub-20 clang-10 (push) Has been cancelled
Base / Ub-20 gcc-9 + RT-5.1 beatnik (push) Has been cancelled
Base / Ub-20 gcc-9 + RT-4.9 (push) Has been cancelled
Base / Ub-20 gcc-9 + RT-5.1 pc686 (push) Has been cancelled
Base / Ub-20 gcc-9 + RT-5.1 uC5282 (push) Has been cancelled
Base / Win2019 MSC-19 (push) Has been cancelled
Base / Win2019 MSC-19, debug (push) Has been cancelled
Base / Win2019 MSC-19, static (push) Has been cancelled
Makes it easier to run clang derivative analysis tools
on builds configured for GCC.
2023-06-13 08:47:13 -07:00
Michael Davidsaver
cb97d662a7
doc
2023-05-01 10:31:01 -07:00
Michael Davidsaver
0c13e6ba6c
iocsh: tab completion handle iocshArgArgv
2023-05-01 10:31:01 -07:00
Michael Davidsaver
8f1243da40
epicsSingleton: eliminate global ctor with >= c++11
2023-05-01 10:25:29 -07:00
Michael Davidsaver
fe9995c0b5
Update recommendation for CONFIGURE_MAXIMUM_FILE_DESCRIPTORS
2023-05-01 09:06:59 -07:00
Freddie Akeroyd
f56412d6a5
WIN32: use FlsAlloc() to cleanup epicsThreadOSD
...
Adjust macros for compiling for older MSVC/Win SDK versions
Try to cover missing fibres include in 7.0 SDK
Support Windows XP and above.
Also removed explicit define of _WIN32_WINNT in code if it has not
been passed on compile line. This is possibly a matter for
further discussion
2023-05-01 09:03:52 -07:00
912a82c0b5
replace deprecated decrementing volatile with atomic decrement
2023-05-01 09:03:52 -07:00
acf2241fd0
Some archs define ECHO in termios.h
2023-05-01 09:03:52 -07:00
Eva Lott
b878295d06
Added the new annotation EPICS_PRINTF_FMT
2023-05-01 09:03:45 -07:00
f41f11c7f6
fix compiler warning on 32 bit systems
2023-04-28 09:35:49 -05:00
Michael Davidsaver
5507646ce7
posix: optimize epicsThreadOnce()
...
Use atomic ops to short circuit when already initialized
2023-04-18 09:51:24 -05:00
Michael Davidsaver
625c2ef159
epicsThreadPerform: time epicsThreadOnce()
2023-04-18 09:51:24 -05:00
Jure Varlec
bdaca51d96
Update shareLib API docs, directing the reader to makeAPIheader.pl
2023-04-18 09:51:21 -05:00
d3dc2afd8d
Merge branch '7.0' (after codeathon 2023) into PSI-7.0
2023-03-29 13:36:52 +02:00
Michael Davidsaver
d3f93746a8
1<<31 upsets ubsan
2023-03-10 10:57:35 +00:00
Michael Davidsaver
531a769007
fix rtems_ne2kpci_driver_attach prototype
2023-03-10 10:57:35 +00:00
Henrique Silva
3e51491628
Fix generalTimeReport interest_level argument type
...
Setting to iocshArgInt actually makes the function verbosity to be able
to be controlled by the value
2023-03-10 10:56:58 +00:00
0b01fb20db
make buffer large enough for any argument value
2023-03-10 10:56:58 +00:00
bcdeeed206
fix missing newline at end of file
2023-03-10 10:56:58 +00:00
Michael Davidsaver
f430389ee7
iocShutdown(): Always stop worker threads
2023-03-10 09:52:08 +00:00
Michael Davidsaver
e22d74310b
RTEMS: ensure epicsThreadMustJoin() short-circuits
2023-03-10 09:52:08 +00:00
Michael Davidsaver
eea361bf5e
Com: Allow runtime bypass of freeListLib
...
By environment or iocsh variable.
2023-03-10 09:48:27 +00:00
64f67d036b
fix epicsThreadSleepQuantum not to fail epicsTimeTest because of unrealistically high clock resolution
2023-02-28 16:08:22 +01:00
23511c4a53
restore VxWorks 5 compatibility
2023-02-15 17:01:11 +01:00
5db310813f
Merge branch '7.0' into PSI-7.0
2023-02-15 16:54:36 +01:00
3dbc9ea264
iocsh: fix argument splitting
...
Since commit 60128ee9 "Com: separate iocsh argument splitting",
iocsh is broken on VxWorks (tested with version 6.9.4.12)
Any command prints the error "Unbalanced quote."
> iocsh
epics> echo
Unbalanced quote.
epics> "echo"
Unbalanced quote.
epics> "echo
Unbalanced quote.
epics> echo bla
Unbalanced quote.
epics> echo 1 2 3
Unbalanced quote.
epics> exit
Unbalanced quote.
2023-02-01 09:25:10 -08:00
Andrew Johnson
550e902bf3
iocLogPrefix: skip "already set" warning if prefix identical
2023-01-19 11:00:14 -06:00
Andrew Johnson
fb742beae3
Fix epicsThreadOnceTest.c
...
Replace epicsThreadSleep() with proper thread synchronization.
The main thread was reading runCount without taking lock first.
Taking the lock before accessing doneCount might not be necessary
given the epicsEventMustWait(), but not 100% sure.
2023-01-06 15:24:56 -06:00
Andrew Johnson
7ef0c80630
errSymLib: status 0 => "Ok"
2022-12-31 19:14:57 -06:00
Andrew Johnson
34ad8e2347
Edits to Release Notes and postfix.h documentation
2022-12-31 19:10:49 -06:00
Andrew Johnson
c2364d9d1c
Add license header to new epicsReadlinePvt.h
2022-12-28 12:42:51 -06:00
Michael Davidsaver
49fddaa13e
errlogRemoveListeners() handle self-removal
...
Handle errlogRemoveListeners() during a callback.
2022-12-20 20:12:04 -08:00
Michael Davidsaver
7448a8bfa9
errlog: worker exit when buffer is empty
...
Allow the worker to flush any buffered messages.
After pvt.atExit, further logging will be synchronous.
Ensure any flusher gets a final wakeup.
2022-12-20 20:12:04 -08:00
Michael Davidsaver
166267a32f
ringPointerTest in thread
2022-12-20 20:12:04 -08:00
Michael Davidsaver
adb0c898a6
doc
2022-12-20 20:12:04 -08:00
Michael Davidsaver
b38ff09f6e
Com: iocsh: Tab completion of variable names for "var"
2022-12-20 20:12:04 -08:00
Michael Davidsaver
d9ca8a70f0
Com: iocsh: Tab completion
...
Add tab completion for "help ...", record names, and "pdbbase"
2022-12-20 20:12:04 -08:00
Michael Davidsaver
60128ee924
Com: separate iocsh argument splitting
2022-12-20 20:12:04 -08:00
Michael Davidsaver
b189991f9d
Com: iocsh: add tab completion for command names
2022-12-20 20:12:04 -08:00
Michael Davidsaver
07ffc1ffae
Com: introduce epicsReadlinePvt.h
...
Helping IDEs understand gnuReadline.c and osdReadline.c
2022-12-20 20:11:45 -08:00