unoxml/source/dom/domimplementation.cxx |   16 ++++++----------
 unoxml/source/dom/node.cxx              |    1 -
 2 files changed, 6 insertions(+), 11 deletions(-)

New commits:
commit 2fe77d0ed8c7c6f2ea0374e0c003ae6280fd591c
Author:     Noel Grandin <noelgran...@gmail.com>
AuthorDate: Thu Nov 18 20:28:00 2021 +0200
Commit:     Noel Grandin <noel.gran...@collabora.co.uk>
CommitDate: Fri Nov 19 12:58:53 2021 +0100

    rtl::Static->thread-safe static in unoxml
    
    Change-Id: Icb458f9ba38225aef17a2421533be79c6d9445d3
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125496
    Tested-by: Jenkins
    Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk>

diff --git a/unoxml/source/dom/domimplementation.cxx 
b/unoxml/source/dom/domimplementation.cxx
index 41cf2c7c053c..0bd7e5940ac6 100644
--- a/unoxml/source/dom/domimplementation.cxx
+++ b/unoxml/source/dom/domimplementation.cxx
@@ -19,25 +19,21 @@
 
 #include "domimplementation.hxx"
 
-#include <rtl/instance.hxx>
 #include <osl/diagnose.h>
+#include <rtl/ref.hxx>
 
 using namespace css::uno;
 using namespace css::xml::dom;
 
 namespace DOM
 {
-    // why the heck is this thing static?
-    // perhaps it would be helpful to know what the implementation should
-    // do to answer this question...
-    namespace {
-        struct DOMImplementation
-            : public ::rtl::Static<CDOMImplementation, DOMImplementation> {};
-    }
-
     CDOMImplementation* CDOMImplementation::get()
     {
-        return & DOMImplementation::get();
+        // why the heck is this thing static?
+        // perhaps it would be helpful to know what the implementation should
+        // do to answer this question...
+        static rtl::Reference<CDOMImplementation> xDOMImplementation = new 
CDOMImplementation;
+        return &*xDOMImplementation;
     }
 
     // there is just 1 static instance, so these must not delete it!
diff --git a/unoxml/source/dom/node.cxx b/unoxml/source/dom/node.cxx
index 14c5dc454da1..f39aba6bd079 100644
--- a/unoxml/source/dom/node.cxx
+++ b/unoxml/source/dom/node.cxx
@@ -25,7 +25,6 @@
 
 #include <algorithm>
 
-#include <rtl/instance.hxx>
 #include <osl/mutex.hxx>
 #include <osl/diagnose.h>
 #include <sal/log.hxx>

Reply via email to