Kaydet (Commit) 1df43525 authored tarafından Kohei Yoshida's avatar Kohei Yoshida

Fix a crash when copying a sheet with drawing obj to a new document.

üst 50f4d165
...@@ -47,6 +47,7 @@ ...@@ -47,6 +47,7 @@
#include <svl/stritem.hxx> #include <svl/stritem.hxx>
#include <svl/zforlist.hxx> #include <svl/zforlist.hxx>
#include <svl/svstdarr.hxx> #include <svl/svstdarr.hxx>
#include <svx/svdview.hxx>
#include <vcl/msgbox.hxx> #include <vcl/msgbox.hxx>
#include <vcl/sound.hxx> #include <vcl/sound.hxx>
#include <vcl/waitobj.hxx> #include <vcl/waitobj.hxx>
...@@ -2466,7 +2467,7 @@ void ScViewFunc::MoveTable( ...@@ -2466,7 +2467,7 @@ void ScViewFunc::MoveTable(
sal_Bool bUndo (pDoc->IsUndoEnabled()); sal_Bool bUndo (pDoc->IsUndoEnabled());
bool bRename = pNewTabName && !pNewTabName->isEmpty(); bool bRename = pNewTabName && !pNewTabName->isEmpty();
sal_Bool bNewDoc = ( nDestDocNo == SC_DOC_NEW ); bool bNewDoc = (nDestDocNo == SC_DOC_NEW);
if ( bNewDoc ) if ( bNewDoc )
{ {
nDestTab = 0; // firstly insert nDestTab = 0; // firstly insert
...@@ -2646,7 +2647,16 @@ void ScViewFunc::MoveTable( ...@@ -2646,7 +2647,16 @@ void ScViewFunc::MoveTable(
pDestDoc->DeleteTab(static_cast<SCTAB>(TheTabs.size())); // old first table pDestDoc->DeleteTab(static_cast<SCTAB>(TheTabs.size())); // old first table
if (pDestViewSh) if (pDestViewSh)
{
// Make sure to clear the cached page view after sheet
// deletion, which still points to the sdr page belonging to
// the deleted sheet.
SdrView* pSdrView = pDestViewSh->GetSdrView();
if (pSdrView)
pSdrView->ClearPageView();
pDestViewSh->TabChanged(); // Pages auf dem Drawing-Layer pDestViewSh->TabChanged(); // Pages auf dem Drawing-Layer
}
pDestShell->PostPaint( 0,0,0, MAXCOL,MAXROW,MAXTAB, pDestShell->PostPaint( 0,0,0, MAXCOL,MAXROW,MAXTAB,
PAINT_GRID | PAINT_TOP | PAINT_LEFT | PAINT_GRID | PAINT_TOP | PAINT_LEFT |
PAINT_EXTRAS | PAINT_SIZE ); PAINT_EXTRAS | PAINT_SIZE );
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment