summaryrefslogtreecommitdiff
path: root/sw
diff options
context:
space:
mode:
authorVladimir Glazounov <vg@openoffice.org>2008-08-20 08:48:04 +0000
committerVladimir Glazounov <vg@openoffice.org>2008-08-20 08:48:04 +0000
commit7451a33d20ffa2eb15055a3cb5dda2b091bf0f78 (patch)
tree27c5bd2cbe644ea5cf6d8bbd1105cdc6b9ddfb91 /sw
parentbd2a1751484bf924525d59b4f57dc594b14e030b (diff)
INTEGRATION: CWS aw033 (1.132.16); FILE MERGED
2008/07/15 14:28:21 aw 1.132.16.1: #i39532# changes after resync - SW problem with XDrawPage lifetime
Diffstat (limited to 'sw')
-rw-r--r--sw/source/ui/uno/unotxdoc.cxx15
1 files changed, 10 insertions, 5 deletions
diff --git a/sw/source/ui/uno/unotxdoc.cxx b/sw/source/ui/uno/unotxdoc.cxx
index 0a6d728ae7c9..62c91dbb6774 100644
--- a/sw/source/ui/uno/unotxdoc.cxx
+++ b/sw/source/ui/uno/unotxdoc.cxx
@@ -7,7 +7,7 @@
* OpenOffice.org - a multi-platform office productivity suite
*
* $RCSfile: unotxdoc.cxx,v $
- * $Revision: 1.133 $
+ * $Revision: 1.134 $
*
* This file is part of OpenOffice.org.
*
@@ -1446,10 +1446,15 @@ Reference< drawing::XDrawPage > SwXTextDocument::getDrawPage(void) throw( Runti
throw RuntimeException();
if(!pxXDrawPage)
{
- ((SwXTextDocument*)this)->pxXDrawPage = new Reference< drawing::XDrawPage > ;
+ // simplified this creation, keeping original below as reference
+ // for the case that it did something by purpose
((SwXTextDocument*)this)->pDrawPage = new SwXDrawPage(pDocShell->GetDoc());
- Reference< drawing::XShapes > xTmp = pDrawPage;
- *pxXDrawPage = Reference< drawing::XDrawPage>(xTmp, UNO_QUERY);
+ ((SwXTextDocument*)this)->pxXDrawPage = new Reference< drawing::XDrawPage >(pDrawPage);
+
+ //((SwXTextDocument*)this)->pxXDrawPage = new Reference< drawing::XDrawPage > ;
+ //((SwXTextDocument*)this)->pDrawPage = new SwXDrawPage(pDocShell->GetDoc());
+ //Reference< drawing::XShapes > xTmp = pDrawPage;
+ //*pxXDrawPage = Reference< drawing::XDrawPage>(xTmp, UNO_QUERY);
}
return *pxXDrawPage;
}
@@ -1589,7 +1594,7 @@ void SwXTextDocument::InitNewDoc()
uno::Reference<lang::XComponent> xComp( *pxXDrawPage, uno::UNO_QUERY );
xComp->dispose();
// <--
- pDrawPage->Invalidate();
+ pDrawPage->InvalidateSwDoc();
delete pxXDrawPage;
pxXDrawPage = 0;
}