diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2014-10-14 09:02:12 +0200 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2014-10-14 09:02:12 +0200 |
commit | b80c468e35ee321b5580b42642064f74f9241fb6 (patch) | |
tree | de50708dfca26072eb8506498b3dbee45ad469ac /starmath/inc | |
parent | 2d6dacc1c93bfd4a9086f8fde6b0edbfdeb573c9 (diff) |
SmViewShell: pImpl must outlive aGraphic member
...as at least during CppunitTest_starmath_qa_cppunit, during ~SmViewShell,
aGraphic's code calls back into SmViewShell's code calls into pImpl:
SmViewShell::IsInlineEditEnabled() const starmath/source/view.cxx:2057:12
SmGraphicWindow::IsInlineEditEnabled() const starmath/source/view.cxx:227:12
SmGraphicWindow::CaretBlinkStop() starmath/source/view.cxx:297:10
SmGraphicWindow::~SmGraphicWindow() starmath/source/view.cxx:126:5
SmViewShell::~SmViewShell() starmath/source/view.cxx:1976:1
[...]
This is somewhat symmetric to 0e263d61811480f3a9dbc6ad7c752f6cfae4e3fc "order
pImpl before aGraphic because aGraphic deferences pImpl in ctor."
Change-Id: I97494bebaf5747205a690e6d65fd05ba8fb61cab
Diffstat (limited to 'starmath/inc')
-rw-r--r-- | starmath/inc/view.hxx | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/starmath/inc/view.hxx b/starmath/inc/view.hxx index 215ac5479025..b23572e2d1e9 100644 --- a/starmath/inc/view.hxx +++ b/starmath/inc/view.hxx @@ -19,6 +19,10 @@ #ifndef INCLUDED_STARMATH_INC_VIEW_HXX #define INCLUDED_STARMATH_INC_VIEW_HXX +#include <sal/config.h> + +#include <memory> + #include <sfx2/dockwin.hxx> #include <sfx2/viewsh.hxx> #include <svtools/scrwin.hxx> @@ -224,7 +228,7 @@ class SmViewShell: public SfxViewShell // for handling the PasteClipboardState friend class SmClipboardChangeListener; - SmViewShell_Impl* pImpl; + std::unique_ptr<SmViewShell_Impl> pImpl; SmGraphicWindow aGraphic; SmGraphicController aGraphicController; |