diff options
author | Caolán McNamara <caolanm@redhat.com> | 2012-03-13 15:14:33 +0000 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2012-03-13 15:15:11 +0000 |
commit | 131e5d35a4edb9f8875a197e8e0382c168834f70 (patch) | |
tree | 80a1f601731ccb98e25882c47fa1c1b36dc359be /svx/source/table/tablehandles.cxx | |
parent | ccac587b1bfc15ed3974cbd9dd59d1e1edda17a3 (diff) |
Resolves: fdo#46728 reference count the overlay managers
Diffstat (limited to 'svx/source/table/tablehandles.cxx')
-rw-r--r-- | svx/source/table/tablehandles.cxx | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/svx/source/table/tablehandles.cxx b/svx/source/table/tablehandles.cxx index 73a980ac06c3..7b1db08662ac 100644 --- a/svx/source/table/tablehandles.cxx +++ b/svx/source/table/tablehandles.cxx @@ -181,13 +181,14 @@ void TableEdgeHdl::CreateB2dIAObject() if(rPageWindow.GetPaintWindow().OutputToWindow()) { - if(rPageWindow.GetOverlayManager()) + rtl::Reference< ::sdr::overlay::OverlayManager > xManager = rPageWindow.GetOverlayManager(); + if (xManager.is()) { if(aVisible.count()) { // create overlay object for visible parts sdr::overlay::OverlayObject* pOverlayObject = new OverlayTableEdge(aVisible, true); - rPageWindow.GetOverlayManager()->add(*pOverlayObject); + xManager->add(*pOverlayObject); maOverlayGroup.append(*pOverlayObject); } @@ -197,7 +198,7 @@ void TableEdgeHdl::CreateB2dIAObject() // a standard HitTest using the primitives from that overlay object // (see OverlayTableEdge implementation) sdr::overlay::OverlayObject* pOverlayObject = new OverlayTableEdge(aInvisible, false); - rPageWindow.GetOverlayManager()->add(*pOverlayObject); + xManager->add(*pOverlayObject); maOverlayGroup.append(*pOverlayObject); } } @@ -286,7 +287,8 @@ void TableBorderHdl::CreateB2dIAObject() if(rPageWindow.GetPaintWindow().OutputToWindow()) { - if(rPageWindow.GetOverlayManager()) + rtl::Reference< ::sdr::overlay::OverlayManager > xManager = rPageWindow.GetOverlayManager(); + if (xManager.is()) { const basegfx::B2DRange aRange(vcl::unotools::b2DRectangleFromRectangle(maRectangle)); sdr::overlay::OverlayObject* pOverlayObject = new sdr::overlay::OverlayHatchRect( @@ -298,7 +300,7 @@ void TableBorderHdl::CreateB2dIAObject() 45 * F_PI180, 0.0); - rPageWindow.GetOverlayManager()->add(*pOverlayObject); + xManager->add(*pOverlayObject); maOverlayGroup.append(*pOverlayObject); } } |