Xavier Bachelot wrote:
> On 10/22/2010 01:31 AM, Xavier Bachelot wrote:
> > Hi,
> > 
> > I'm packaging libaacs for a Fedora third party repository and one of the
> > rpmlint sanity checks on the produced binaries fails :
> > 
> > libaacs.x86_64: W: shared-lib-calls-exit /usr/lib64/libaacs.so.0.0.0
> > exit@GLIBC_2.2.5
> > This library package calls exit() or _exit(), probably in a non-fork()
> > context. Doing so from a library is strongly discouraged - when a library
> > function calls exit(), it prevents the calling program from handling the
> > error, reporting it to the user, closing files properly, and cleaning up any
> > state that the program has. It is preferred for the library to return an
> > actual error code and let the calling program decide how to handle the
> > situation
> > 
> > This is with an uptodate git checkout (git hash :
> > 00b2df2bb7598262da44683509b50a7a983026fd).
> > Could someone please take a look at this ?
> > 
> This is still happening with latest git tree
> (876f45a3f727eb6f06cdb2b0128f857226346e59).
> I've searched the sources for call to exit() and _exit(), but couldn't
> find anything. Can anyone help with this issue ?

It is in generated code (keydbcfg-lexer.c).

Maybe one could re-define YY_FATAL_ERROR() to print the error message
and somehow stop lexer. Just ignoring errors won't work - calling exit()
is still better than segfaulting when memory allocation fails etc.


- Petri

_______________________________________________
libaacs-devel mailing list
[email protected]
http://mailman.videolan.org/listinfo/libaacs-devel

Reply via email to