summaryrefslogtreecommitdiff
path: root/unoxml
diff options
context:
space:
mode:
Diffstat (limited to 'unoxml')
-rw-r--r--unoxml/source/events/eventdispatcher.cxx10
-rw-r--r--unoxml/source/events/eventdispatcher.hxx2
2 files changed, 12 insertions, 0 deletions
diff --git a/unoxml/source/events/eventdispatcher.cxx b/unoxml/source/events/eventdispatcher.cxx
index 70da8370d015..665815b686d3 100644
--- a/unoxml/source/events/eventdispatcher.cxx
+++ b/unoxml/source/events/eventdispatcher.cxx
@@ -74,6 +74,16 @@ namespace DOM { namespace events {
}
}
+ CEventDispatcher::~CEventDispatcher()
+ {
+ // delete the multimaps for the various types
+ for (TypeListenerMap::iterator aI = m_CaptureListeners.begin(); aI != m_CaptureListeners.end(); ++aI)
+ delete aI->second;
+
+ for (TypeListenerMap::iterator aI = m_TargetListeners.begin(); aI != m_TargetListeners.end(); ++aI)
+ delete aI->second;
+ }
+
void CEventDispatcher::callListeners(
TypeListenerMap const& rTMap,
xmlNodePtr const pNode,
diff --git a/unoxml/source/events/eventdispatcher.hxx b/unoxml/source/events/eventdispatcher.hxx
index 479827784617..cb2170199cc4 100644
--- a/unoxml/source/events/eventdispatcher.hxx
+++ b/unoxml/source/events/eventdispatcher.hxx
@@ -79,6 +79,8 @@ public:
xmlNodePtr const pNode,
Reference<XNode> const& xNode,
Reference< XEvent > const& xEvent) const;
+
+ ~CEventDispatcher();
};
}}