* Kamil Dudka: > On Friday, May 10, 2019 12:17:11 AM CEST Paul Eggert wrote: >> On 5/8/19 11:39 PM, Florian Weimer wrote: >> > atexit handlers run before ELF destructors (and some C++ destructors). >> > There can also be multiple such handlers. So it's not true that an >> > atexit handler always runs last. >> >> OK, but this shouldn't be a problem with any applications currently >> using close_stdout. At least, none of the applications I know about. > > How would you know if they did? > > As long as you link libraries dynamically, any of the directly or indirectly > linked libraries can introduce an ELF destructor or atexit() handler anytime, > which would take an immediate effect even on your already built applications. > People also like to use instrumentation libraries enforced by LD_PRELOAD in > their test environment. Those can easily clash with such cleanup handlers.
Right. And I found close_stdout after someone reported problems with an LD_PRELOAD-like mechanism and its logging output. For some users, this is an actual problem. Thanks, Florian