Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I. The pigpio library's default signal handler is changed:
Term
disposition, see II).The philosophy here is to do only the essential halting of the DMA engines and avoid any functions that are not signal-safe.
II. The default signal handler is installed only for signals:
Term
disposition as defined in signal(7).III. SIGPIPE, SIGCHLD and SIGWINCH are ignored as before.
IV. SIGUSR1, SIGUSR2 are custom handlers as before.
V. API
gpioSetSignalFunc()
can set / cancel custom handlers on any signal except:gpioInitialize()
or as listed in III.gpioInitialise()
.A cancelled signal will have its previous handler, which may be the library's default handler, re-installed.
VI. Upon
gpioTerminate()
, any signal installed by the library will be restored to its original handler. (issue #341)