summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2015-05-26 17:33:52 +0100
committerCaolán McNamara <caolanm@redhat.com>2015-05-26 17:34:09 +0100
commit2a6aa95a7af11eb091dfa9494cd810998b2e324d (patch)
tree5fea46e1d9de1f84f3a03561a612849e0df6a7a3
parent2efb9d3c9841397cca3a66714504ee25d2120bd2 (diff)
Resolves: tdf#91542 crash on pressing return in sidebar line popup
Change-Id: I661a51f84827326dfc33a11a02f8065d68e8333a
-rw-r--r--include/svx/sidebar/Popup.hxx2
-rw-r--r--svx/source/sidebar/line/LinePropertyPanel.cxx1
-rw-r--r--svx/source/sidebar/tools/Popup.cxx7
3 files changed, 9 insertions, 1 deletions
diff --git a/include/svx/sidebar/Popup.hxx b/include/svx/sidebar/Popup.hxx
index 4fd74d14db8a..ebd91bb9fa90 100644
--- a/include/svx/sidebar/Popup.hxx
+++ b/include/svx/sidebar/Popup.hxx
@@ -75,6 +75,8 @@ public :
*/
void SetPopupModeEndHandler (const ::boost::function<void()>& rCallback);
+ void dispose();
+
protected:
VclPtr<PopupControl> mxControl;
diff --git a/svx/source/sidebar/line/LinePropertyPanel.cxx b/svx/source/sidebar/line/LinePropertyPanel.cxx
index 589247e35ee4..e7348a9c19c0 100644
--- a/svx/source/sidebar/line/LinePropertyPanel.cxx
+++ b/svx/source/sidebar/line/LinePropertyPanel.cxx
@@ -213,6 +213,7 @@ void LinePropertyPanel::dispose()
mpFTCapStyle.clear();
mpLBCapStyle.clear();
+ maLineWidthPopup.dispose();
maStyleControl.dispose();
maDashControl.dispose();
maWidthControl.dispose();
diff --git a/svx/source/sidebar/tools/Popup.cxx b/svx/source/sidebar/tools/Popup.cxx
index 71911a51ae72..3bd6246a5fcf 100644
--- a/svx/source/sidebar/tools/Popup.cxx
+++ b/svx/source/sidebar/tools/Popup.cxx
@@ -40,12 +40,17 @@ Popup::Popup (
OSL_ASSERT(maControlCreator);
}
-Popup::~Popup()
+void Popup::dispose()
{
mxControl.disposeAndClear();
mxContainer.disposeAndClear();
}
+Popup::~Popup()
+{
+ dispose();
+}
+
void Popup::Show (ToolBox& rToolBox)
{
rToolBox.SetItemDown(rToolBox.GetCurItemId(), true);