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

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