summaryrefslogtreecommitdiffstats
path: root/accessibility/source
diff options
context:
space:
mode:
Diffstat (limited to 'accessibility/source')
-rw-r--r--accessibility/source/standard/vclxaccessiblelist.cxx10
1 files changed, 7 insertions, 3 deletions
diff --git a/accessibility/source/standard/vclxaccessiblelist.cxx b/accessibility/source/standard/vclxaccessiblelist.cxx
index 36573dcbb3..00a4258f60 100644
--- a/accessibility/source/standard/vclxaccessiblelist.cxx
+++ b/accessibility/source/standard/vclxaccessiblelist.cxx
@@ -108,6 +108,12 @@ void SAL_CALL VCLXAccessibleList::disposing()
{
VCLXAccessibleComponent::disposing();
+ disposeChildren();
+ m_pListBoxHelper.reset();
+}
+
+void VCLXAccessibleList::disposeChildren()
+{
// Dispose all items in the list.
for (rtl::Reference<VCLXAccessibleListItem>& rxChild : m_aAccessibleChildren)
{
@@ -116,8 +122,6 @@ void SAL_CALL VCLXAccessibleList::disposing()
}
m_aAccessibleChildren.clear();
-
- m_pListBoxHelper.reset();
}
@@ -515,7 +519,7 @@ rtl::Reference<VCLXAccessibleListItem> VCLXAccessibleList::CreateChild(sal_Int32
void VCLXAccessibleList::HandleChangedItemList()
{
- m_aAccessibleChildren.clear();
+ disposeChildren();
NotifyAccessibleEvent (
AccessibleEventId::INVALIDATE_ALL_CHILDREN,
Any(), Any());