I belatedly took a look at this proposed change.

The added file backtrace.cc doesn't include a license.  If it's
code that you copied from the internet, then you can't just add a
license statement on your own, you have to obey the original (probably
also unspecified) license.

If readlink truncates, it won't work.

If gdb isn't installed (i.e., all non-developer machines), this code
doesn't provide a backtrace.

It looks superficially like SIGUSR1 will only work once, as the signal
is ignored.

You're calling lots of stuff from a signal.  Strictly speaking, almost
nothing in POSIX is reentrant in this way.  Lots of programs violate
this requirement, but that's really a lousy to write new code that does
it.  (a complete list of functions that are callable from signal handlers is
part way down this page:
http://pubs.opengroup.org/onlinepubs/009695399/functions/xsh_chap02_04.html#tag_02_04
readlink, fprintf, and who knows what all that is called indirectly from
emcOperatorError are not permitted)

Ignoring that list for a moment, you also don't save and restore errno,
but you do call things like fork() and readlink() that can change errno.

Jeff

------------------------------------------------------------------------------
Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex
infrastructure or vast IT resources to deliver seamless, secure access to
virtual desktops. With this all-in-one solution, easily deploy virtual 
desktops for less than the cost of PCs and save 60% on VDI infrastructure 
costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox
_______________________________________________
Emc-developers mailing list
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to