diff options
author | Michael Meeks <michael.meeks@collabora.com> | 2016-07-12 19:39:33 +0100 |
---|---|---|
committer | Andras Timar <andras.timar@collabora.com> | 2016-07-13 21:16:16 +0200 |
commit | e8102bb5f30eef49edb0591f661e4bb6e626c0aa (patch) | |
tree | 7387a82a8565347468d032859091015c4248ff41 /desktop/source | |
parent | fbedd668d877d0c8194e5a80ac0336643e36064f (diff) |
tdf#100883 - opencl impls. that use SEH are still bad.
Amazingly we fell-back to the old calculation path for
crashes in older LibreOffices.
Change-Id: Ia182f7a25c5560b68494d5cdd68e02925bfd5845
Reviewed-on: https://gerrit.libreoffice.org/27164
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Michael Meeks <michael.meeks@collabora.com>
(cherry picked from commit 2b1f1030bf642d1b9c8af91aa78683a9fb95e6f4)
Diffstat (limited to 'desktop/source')
-rw-r--r-- | desktop/source/app/opencl.cxx | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/desktop/source/app/opencl.cxx b/desktop/source/app/opencl.cxx index 09f2204e07ca..2b8d6d67e98e 100644 --- a/desktop/source/app/opencl.cxx +++ b/desktop/source/app/opencl.cxx @@ -46,6 +46,8 @@ bool testOpenCLCompute(const Reference< XDesktop2 > &xDesktop, const OUString &r bool bSuccess = false; css::uno::Reference< css::lang::XComponent > xComponent; + sal_uInt64 nKernelFailures = opencl::kernelFailures; + SAL_INFO("opencl", "Starting CL test spreadsheet"); try { @@ -95,11 +97,21 @@ bool testOpenCLCompute(const Reference< XDesktop2 > &xDesktop, const OUString &r SAL_WARN("opencl", "OpenCL testing failed - disabling: " << e.Message); } + if (nKernelFailures != opencl::kernelFailures) + { + // tdf# + SAL_WARN("opencl", "OpenCL kernels failed to compile, " + "or took SEH exceptions " + << nKernelFailures << " != " << opencl::kernelFailures); + bSuccess = false; + } + if (!bSuccess) OpenCLZone::hardDisable(); if (xComponent.is()) xComponent->dispose(); + return bSuccess; } |