[Libreoffice-commits] core.git: coverity#1323754 we apparently can survive std::abort for a while
Stephan Bergmann
sbergman at redhat.com
Fri Sep 11 02:25:29 PDT 2015
On 09/11/2015 10:47 AM, Caolán McNamara wrote:
> commit 044deb37ae308c10a5bc0e976de40e257caa9a4e
> Author: Caolán McNamara <caolanm at redhat.com>
> Date: Fri Sep 11 09:40:15 2015 +0100
>
> coverity#1323754 we apparently can survive std::abort for a while
>
> so try and suppress this warning
>
> Change-Id: I096352af0116f1ba0911cc201eb884267095a797
>
> diff --git a/vcl/source/opengl/OpenGLHelper.cxx b/vcl/source/opengl/OpenGLHelper.cxx
> index 014a5ad..0e0e10c 100644
> --- a/vcl/source/opengl/OpenGLHelper.cxx
> +++ b/vcl/source/opengl/OpenGLHelper.cxx
> @@ -554,6 +554,7 @@ void OpenGLWatchdogThread::execute()
> nUnchanged = 0;
> std::abort();
> }
> + // coverity[dead_error_line] - we might have caught SIGABRT and failed to exit yet
> bAbortFired = true;
> }
> }
What am I missing here? abort is guaranteed to not return to its caller
(even if there is a handler for SIGABRT). So, like Coverity, I fail to
see how that line can ever be reached (and bAbortFired, of automatic
storage during in OpenGLWatchdogThread::execute, ever be true).
Can it be that what
<http://cgit.freedesktop.org/libreoffice/core/commit/?id=daa869222edc3aded82f0fc3e73f126b6cfd08ad>
"http://cgit.freedesktop.org/libreoffice/core/commit/?id=daa869222edc3aded82f0fc3e73f126b6cfd08ad"
really wanted to do is make bAbortFired static, and set it to true
/before/ calling std::abort()?
More information about the LibreOffice
mailing list