On domingo, 14 de maio de 2017 21:52:56 PDT Dirk Hohndel wrote:
> Ah, apparently this is a Qt bug that was declared not a bug at some point
> (you can find quite a few threads about this), and the way to work around
> it is to implement your own Logger class and exit() instead of abort()
> when you get a "Could not connect to display error".
> 
> Not one of the more useful aspects of Qt, I'd like to add...

Unfortunately, exit() is often harmful in C++ programs, since the global & 
atexit destructors are run, but the stack hasn't been unwound so objects in 
the main() function continue to exist. This breaks a number of assumptions 
about the order in which things are destroyed (namely, that it is the opposite 
in which they were constructed).

Using _exit() might help, but it may bring its own set of problems. At least 
it's closer to the qFatal call that is there now.

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel Open Source Technology Center

_______________________________________________
subsurface mailing list
subsurface@subsurface-divelog.org
http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface

Reply via email to