Blame SOURCES/0001-tdf-137209-unparent-widgets-in-fragment-dtor.patch

9317df
From 96fc7531331f45a314416000150b1141e5686f38 Mon Sep 17 00:00:00 2001
9317df
From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm@redhat.com>
9317df
Date: Fri, 2 Oct 2020 16:21:02 +0100
9317df
Subject: [PATCH] tdf#137209 unparent widgets in fragment dtor
9317df
9317df
Change-Id: I819514fd2b97e2cc8daad71a7f3b0b27afe6136d
9317df
---
9317df
 sw/source/ui/dbui/createaddresslistdialog.cxx | 8 ++++++++
9317df
 1 file changed, 8 insertions(+)
9317df
9317df
diff --git a/sw/source/ui/dbui/createaddresslistdialog.cxx b/sw/source/ui/dbui/createaddresslistdialog.cxx
9317df
index ae4d354ea29d..994a6045cea5 100644
9317df
--- a/sw/source/ui/dbui/createaddresslistdialog.cxx
9317df
+++ b/sw/source/ui/dbui/createaddresslistdialog.cxx
9317df
@@ -53,11 +53,13 @@ struct SwAddressFragment
9317df
     std::unique_ptr<weld::Builder> m_xBuilder;
9317df
     std::unique_ptr<weld::Label> m_xLabel;
9317df
     std::unique_ptr<weld::Entry> m_xEntry;
9317df
+    weld::Container* m_pGrid;
9317df
 
9317df
     SwAddressFragment(weld::Container* pGrid, int nLine)
9317df
         : m_xBuilder(Application::CreateBuilder(pGrid, "modules/swriter/ui/addressfragment.ui"))
9317df
         , m_xLabel(m_xBuilder->weld_label("label"))
9317df
         , m_xEntry(m_xBuilder->weld_entry("entry"))
9317df
+        , m_pGrid(pGrid)
9317df
     {
9317df
         m_xLabel->set_grid_left_attach(0);
9317df
         m_xLabel->set_grid_top_attach(nLine);
9317df
@@ -65,6 +67,12 @@ struct SwAddressFragment
9317df
         m_xEntry->set_grid_left_attach(1);
9317df
         m_xEntry->set_grid_top_attach(nLine);
9317df
     }
9317df
+
9317df
+    virtual ~SwAddressFragment()
9317df
+    {
9317df
+        m_pGrid->move(m_xEntry.get(), nullptr);
9317df
+        m_pGrid->move(m_xLabel.get(), nullptr);
9317df
+    }
9317df
 };
9317df
 
9317df
 class SwAddressControl_Impl
9317df
-- 
9317df
2.26.2
9317df