diff options
author | Michael Stahl <mst@openoffice.org> | 2011-01-19 20:27:24 +0100 |
---|---|---|
committer | Michael Stahl <mst@openoffice.org> | 2011-01-19 20:27:24 +0100 |
commit | 6f147497c08f074bd659152769f1a3008fe052b8 (patch) | |
tree | f8a7dab3b78a0db13b7f81cfb3b17b21bf90e6c6 /unoxml | |
parent | 711668c78407e0c16c725c8f19c3bfd9e81fd26c (diff) |
xmlfix3: unoxml: fix CNotationsMap: member pointer does not keep document alive
Diffstat (limited to 'unoxml')
-rw-r--r-- | unoxml/source/dom/notationsmap.cxx | 40 | ||||
-rw-r--r-- | unoxml/source/dom/notationsmap.hxx | 48 |
2 files changed, 60 insertions, 28 deletions
diff --git a/unoxml/source/dom/notationsmap.cxx b/unoxml/source/dom/notationsmap.cxx index 477d40277374..d985c48eaf74 100644 --- a/unoxml/source/dom/notationsmap.cxx +++ b/unoxml/source/dom/notationsmap.cxx @@ -25,12 +25,16 @@ * ************************************************************************/ -#include "notationsmap.hxx" +#include <notationsmap.hxx> + +#include <documenttype.hxx> + namespace DOM { - CNotationsMap::CNotationsMap(const CDocumentType* aDocType) - : m_pDocType(aDocType) + CNotationsMap::CNotationsMap( + ::rtl::Reference<CDocumentType> const& pDocType) + : m_pDocType(pDocType) { } @@ -45,7 +49,9 @@ namespace DOM /** Retrieves a node specified by local name */ - Reference< XNode > SAL_CALL CNotationsMap::getNamedItem(const OUString& /* name */) throw (RuntimeException) + Reference< XNode > SAL_CALL + CNotationsMap::getNamedItem(OUString const& /*name*/) + throw (RuntimeException) { return Reference< XNode >(); } @@ -53,8 +59,10 @@ namespace DOM /** Retrieves a node specified by local name and namespace URI. */ - Reference< XNode > SAL_CALL CNotationsMap::getNamedItemNS(const OUString& /*namespaceURI*/, const OUString& /*localName*/) -throw (RuntimeException) + Reference< XNode > SAL_CALL + CNotationsMap::getNamedItemNS( + OUString const& /*namespaceURI*/, OUString const& /*localName*/) + throw (RuntimeException) { return Reference< XNode >(); } @@ -62,7 +70,8 @@ throw (RuntimeException) /** Returns the indexth item in the map. */ - Reference< XNode > SAL_CALL CNotationsMap::item(sal_Int32 /*index*/) throw (RuntimeException) + Reference< XNode > SAL_CALL + CNotationsMap::item(sal_Int32 /*index*/) throw (RuntimeException) { return Reference< XNode >(); } @@ -70,7 +79,9 @@ throw (RuntimeException) /** Removes a node specified by name. */ - Reference< XNode > SAL_CALL CNotationsMap::removeNamedItem(const OUString& /*name*/) throw (RuntimeException) + Reference< XNode > SAL_CALL + CNotationsMap::removeNamedItem(OUString const& /*name*/) + throw (RuntimeException) { return Reference< XNode >(); } @@ -78,7 +89,10 @@ throw (RuntimeException) /** // Removes a node specified by local name and namespace URI. */ - Reference< XNode > SAL_CALL CNotationsMap::removeNamedItemNS(const OUString& /*namespaceURI*/, const OUString& /*localName*/) throw (RuntimeException) + Reference< XNode > SAL_CALL + CNotationsMap::removeNamedItemNS( + OUString const& /*namespaceURI*/, OUString const& /*localName*/) + throw (RuntimeException) { return Reference< XNode >(); } @@ -86,7 +100,9 @@ throw (RuntimeException) /** // Adds a node using its nodeName attribute. */ - Reference< XNode > SAL_CALL CNotationsMap::setNamedItem(const Reference< XNode >& /*arg*/) throw (RuntimeException) + Reference< XNode > SAL_CALL + CNotationsMap::setNamedItem(Reference< XNode > const& /*arg*/) + throw (RuntimeException) { return Reference< XNode >(); } @@ -94,7 +110,9 @@ throw (RuntimeException) /** Adds a node using its namespaceURI and localName. */ - Reference< XNode > SAL_CALL CNotationsMap::setNamedItemNS(const Reference< XNode >& /*arg*/) throw (RuntimeException) + Reference< XNode > SAL_CALL + CNotationsMap::setNamedItemNS(Reference< XNode > const& /*arg*/) + throw (RuntimeException) { return Reference< XNode >(); } diff --git a/unoxml/source/dom/notationsmap.hxx b/unoxml/source/dom/notationsmap.hxx index 9c950c64de4c..cb1a29185544 100644 --- a/unoxml/source/dom/notationsmap.hxx +++ b/unoxml/source/dom/notationsmap.hxx @@ -25,18 +25,18 @@ * ************************************************************************/ -#ifndef _NOTATIONSMAP_HXX -#define _NOTATIONSMAP_HXX +#ifndef DOM_NOTATIONSMAP_HXX +#define DOM_NOTATIONSMAP_HXX -#include <map> #include <sal/types.h> -#include <cppuhelper/implbase1.hxx> +#include <rtl/ref.hxx> + #include <com/sun/star/uno/Reference.h> -#include <com/sun/star/uno/Exception.hpp> #include <com/sun/star/xml/dom/XNode.hpp> #include <com/sun/star/xml/dom/XNamedNodeMap.hpp> -#include "document.hxx" -#include "documenttype.hxx" + +#include <cppuhelper/implbase1.hxx> + using ::rtl::OUString; using namespace com::sun::star::uno; @@ -44,13 +44,16 @@ using namespace com::sun::star::xml::dom; namespace DOM { - class CNotationsMap : public cppu::WeakImplHelper1< XNamedNodeMap > + class CDocumentType; + + class CNotationsMap + : public cppu::WeakImplHelper1< XNamedNodeMap > { private: - const CDocumentType* m_pDocType; + ::rtl::Reference<CDocumentType> const m_pDocType; public: - CNotationsMap(const CDocumentType* aDocType); + CNotationsMap(::rtl::Reference<CDocumentType> const& pDocType); /** The number of nodes in this map. @@ -60,37 +63,48 @@ namespace DOM /** Retrieves a node specified by local name */ - virtual Reference< XNode > SAL_CALL getNamedItem(const OUString& name) throw (RuntimeException); + virtual Reference< XNode > SAL_CALL + getNamedItem(OUString const& name) throw (RuntimeException); /** Retrieves a node specified by local name and namespace URI. */ - virtual Reference< XNode > SAL_CALL getNamedItemNS(const OUString& namespaceURI,const OUString& localName) throw (RuntimeException); + virtual Reference< XNode > SAL_CALL getNamedItemNS( + OUString const& namespaceURI, OUString const& localName) + throw (RuntimeException); /** Returns the indexth item in the map. */ - virtual Reference< XNode > SAL_CALL item(sal_Int32 index) throw (RuntimeException); + virtual Reference< XNode > SAL_CALL + item(sal_Int32 index) throw (RuntimeException); /** Removes a node specified by name. */ - virtual Reference< XNode > SAL_CALL removeNamedItem(const OUString& name) throw (RuntimeException); + virtual Reference< XNode > SAL_CALL + removeNamedItem(OUString const& name) throw (RuntimeException); /** // Removes a node specified by local name and namespace URI. */ - virtual Reference< XNode > SAL_CALL removeNamedItemNS(const OUString& namespaceURI, const OUString& localName) throw (RuntimeException); + virtual Reference< XNode > SAL_CALL removeNamedItemNS( + OUString const& namespaceURI, OUString const& localName) + throw (RuntimeException); /** // Adds a node using its nodeName attribute. */ - virtual Reference< XNode > SAL_CALL setNamedItem(const Reference< XNode >& arg) throw (RuntimeException); + virtual Reference< XNode > SAL_CALL + setNamedItem(Reference< XNode > const& arg) + throw (RuntimeException); /** Adds a node using its namespaceURI and localName. */ - virtual Reference< XNode > SAL_CALL setNamedItemNS(const Reference< XNode >& arg) throw (RuntimeException); + virtual Reference< XNode > SAL_CALL + setNamedItemNS(Reference< XNode > const& arg) + throw (RuntimeException); }; } |