[sane-devel] signal handling by libsane and backends
wy-sane-devel at arcor.de
Thu Sep 14 11:30:55 UTC 2006
On Thursday 14 September 2006 09:09, Gerhard Jaeger wrote:
> On Tuesday 12 September 2006 04:02, Ryan Reading wrote:
> > The sane library and/or its backends don't seem to "clean up" after
> > themselves by restoring signal handlers and/or signal masks.
> > [...]
> And yes, I think you are right. Grep for sigaction or signal function calls
> within the backend directory and you'll see, that no backend saves the
> old sigmasks or handlers for restoring.
I think, it is OK if the backend modifies sigmasks and/or installs signal
handlers in the _child_ process but doesn't restore them. On the other hand,
as Ryan mentioned, it will probably cause problems if you do it in the parent
process and do not take special care of old sigmasks and signal handlers.
> Even sanei_thread does not restore the tweaked masks/handlers.
> Workaround could be to get the settings before calling any sane function
> and to do the restore stuff on your own.
This should be documented somewhere, maybe in PROBLEMS?
More information about the sane-devel