summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Mohrhard <markus.mohrhard@googlemail.com>2014-06-10 06:22:25 +0200
committerMarkus Mohrhard <markus.mohrhard@googlemail.com>2014-06-10 06:41:18 +0200
commit009c6835aca4a0066c6ae80db8736d8e43af6783 (patch)
tree5fd89cf5202b7f0d3631fdcef134b5540f25951d
parentde95cdd5768b4713a6c7f99716ddac7487dad288 (diff)
avoid access to ChartView after having been deleted
e.g. 49225-3.xlsx Change-Id: I62f2c39a928619ccfa66f128577de2c71f243a1c
-rw-r--r--chart2/source/view/main/ChartView.cxx8
1 files changed, 8 insertions, 0 deletions
diff --git a/chart2/source/view/main/ChartView.cxx b/chart2/source/view/main/ChartView.cxx
index 5a2b3e424cdb..efc5c10d05c7 100644
--- a/chart2/source/view/main/ChartView.cxx
+++ b/chart2/source/view/main/ChartView.cxx
@@ -158,6 +158,7 @@ class GL2DRenderer : public IRenderer
{
public:
GL2DRenderer(ChartView* pView);
+ virtual ~GL2DRenderer() SAL_OVERRIDE;
virtual void update() SAL_OVERRIDE;
virtual void clickedAt(const Point& rPos, sal_uInt16 nButton) SAL_OVERRIDE;
@@ -173,6 +174,13 @@ GL2DRenderer::GL2DRenderer(ChartView* pView):
{
}
+GL2DRenderer::~GL2DRenderer()
+{
+ OpenGLWindow* pWindow = mpView->mrChartModel.getOpenGLWindow();
+ if(pWindow)
+ pWindow->setRenderer(NULL);
+}
+
void GL2DRenderer::update()
{
mpView->render();