diff options
author | Noel Grandin <noel@peralex.com> | 2015-05-26 13:08:20 +0200 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2015-05-26 16:14:58 +0100 |
commit | 38ce0b5ccf5d4398a26304fde19f0bb42dd13b91 (patch) | |
tree | 6b0a71bccefadb26ed6bfc1dfc6263f28876c36d | |
parent | 3f5ce7de7cdc3d010738e4cffbe28b3b73676f5a (diff) |
tdf#91543 - TABLE DESIGN window menu option Close causes BASE to crash
Change-Id: Ib169950f4e33dc71db66fd9a938838b568d2cc22
(cherry picked from commit 15e64391aeed35e5c85876650fd8093f20958d8b)
-rw-r--r-- | dbaccess/source/ui/control/FieldDescControl.cxx | 4 | ||||
-rw-r--r-- | dbaccess/source/ui/tabledesign/TEditControl.cxx | 6 | ||||
-rw-r--r-- | dbaccess/source/ui/tabledesign/TEditControl.hxx | 1 |
3 files changed, 9 insertions, 2 deletions
diff --git a/dbaccess/source/ui/control/FieldDescControl.cxx b/dbaccess/source/ui/control/FieldDescControl.cxx index 3cce5975a3a1..bc1820e8a697 100644 --- a/dbaccess/source/ui/control/FieldDescControl.cxx +++ b/dbaccess/source/ui/control/FieldDescControl.cxx @@ -208,8 +208,8 @@ void OFieldDescControl::dispose() m_pType.clear(); m_pAutoIncrementValue.clear(); pFormat.clear(); - m_pVertScroll.clear(); - m_pHorzScroll.clear(); + m_pVertScroll.disposeAndClear(); + m_pHorzScroll.disposeAndClear(); TabPage::dispose(); } diff --git a/dbaccess/source/ui/tabledesign/TEditControl.cxx b/dbaccess/source/ui/tabledesign/TEditControl.cxx index eb0c16fb4d3c..ba648963ba85 100644 --- a/dbaccess/source/ui/tabledesign/TEditControl.cxx +++ b/dbaccess/source/ui/tabledesign/TEditControl.cxx @@ -85,7 +85,11 @@ OTableEditorCtrl::ClipboardInvalidator::ClipboardInvalidator(sal_uLong nTimeout, OTableEditorCtrl::ClipboardInvalidator::~ClipboardInvalidator() { m_aInvalidateTimer.Stop(); +} +void OTableEditorCtrl::ClipboardInvalidator::Stop() +{ + m_aInvalidateTimer.Stop(); } IMPL_LINK_NOARG_TYPED(OTableEditorCtrl::ClipboardInvalidator, OnInvalidate, Timer *, void) @@ -260,6 +264,8 @@ void OTableEditorCtrl::dispose() // Reset the Undo-Manager GetUndoManager().Clear(); + m_aInvalidate.Stop(); + // Take possible Events from the queue if( nCutEvent ) Application::RemoveUserEvent( nCutEvent ); diff --git a/dbaccess/source/ui/tabledesign/TEditControl.hxx b/dbaccess/source/ui/tabledesign/TEditControl.hxx index bbd4d18e0184..b56e8d8bb666 100644 --- a/dbaccess/source/ui/tabledesign/TEditControl.hxx +++ b/dbaccess/source/ui/tabledesign/TEditControl.hxx @@ -76,6 +76,7 @@ namespace dbaui public: ClipboardInvalidator(sal_uLong nTimeout,OTableEditorCtrl*); ~ClipboardInvalidator(); + void Stop(); protected: DECL_LINK_TYPED(OnInvalidate, Timer*, void); |