diff options
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/inc/skia/zone.hxx | 3 | ||||
-rw-r--r-- | vcl/skia/README | 9 |
2 files changed, 12 insertions, 0 deletions
diff --git a/vcl/inc/skia/zone.hxx b/vcl/inc/skia/zone.hxx index 1f6bbb0dddca..6d503e7eb803 100644 --- a/vcl/inc/skia/zone.hxx +++ b/vcl/inc/skia/zone.hxx @@ -14,10 +14,13 @@ #include <vcl/dllapi.h> +#include <comphelper/solarmutex.hxx> + // Used around calls to Skia code to detect crashes in drivers. class VCL_DLLPUBLIC SkiaZone : public CrashZone<SkiaZone> { public: + SkiaZone() { assert(comphelper::SolarMutex::get()->IsCurrentThread()); } static void hardDisable(); static void relaxWatchdogTimings(); static const CrashWatchdogTimingsValues& getCrashWatchdogTimingsValues(); diff --git a/vcl/skia/README b/vcl/skia/README index f178ef8f3b76..c508beb33cea 100644 --- a/vcl/skia/README +++ b/vcl/skia/README @@ -59,6 +59,15 @@ You can also use 'visualbackendtest' to visually check some operations. Use some SAL_SKIA=raster SAL_ENABLESKIA=1 SAL_USE_VCLPLUGIN=gen [srcdir]/bin/run visualbackendtest +Thread safety: +============== + +SolarMutex must be held for most operations (asserted in SkiaSalGraphicsImpl::preDraw() and +in SkiaZone constructor). The reason for this is that this restriction does not appear to be +a problem, so there's no need to verify thread safety of the code (including the Skia library). +There's probably no fundamental reason why the code couldn't be made thread-safe. + + GrDirectContext sharing: ======================== |