summaryrefslogtreecommitdiff
path: root/sd
diff options
context:
space:
mode:
authorOcke Janssen <oj@openoffice.org>2011-03-04 07:53:39 +0100
committerOcke Janssen <oj@openoffice.org>2011-03-04 07:53:39 +0100
commit3f554df00ffd78a070ce642694c4b55e3df78133 (patch)
treed0a72db95abd4075ad0c684ee93827bd64934b85 /sd
parentf2aeec8f22f37146c2f9120e8d0ead383049c1fa (diff)
parent1fc659a8eacf409985606d21b48cce81101ff88a (diff)
Automated merge with file:///d:\tools\master\ooo
Diffstat (limited to 'sd')
-rwxr-xr-xsd/source/ui/framework/factories/BasicViewFactory.cxx15
-rwxr-xr-xsd/source/ui/unoidl/unomodel.cxx7
2 files changed, 21 insertions, 1 deletions
diff --git a/sd/source/ui/framework/factories/BasicViewFactory.cxx b/sd/source/ui/framework/factories/BasicViewFactory.cxx
index 902c6f48a9a7..ebb55ec3bd57 100755
--- a/sd/source/ui/framework/factories/BasicViewFactory.cxx
+++ b/sd/source/ui/framework/factories/BasicViewFactory.cxx
@@ -50,6 +50,7 @@
#include <sfx2/viewfrm.hxx>
#include <vcl/wrkwin.hxx>
#include <toolkit/helper/vclunohelper.hxx>
+#include <tools/diagnose_ex.h>
#include <boost/bind.hpp>
@@ -152,6 +153,20 @@ BasicViewFactory::BasicViewFactory (
BasicViewFactory::~BasicViewFactory (void)
{
+ mpViewCache.reset();
+
+ Reference< awt::XWindow > xLocalPaneWindow( mxLocalPane->getWindow() );
+ try
+ {
+ const Reference< XComponent > xLocalPaneComponent( mxLocalPane, UNO_QUERY_THROW );
+ xLocalPaneComponent->dispose();
+ const Reference< XComponent > xWindowComponent( xLocalPaneWindow, UNO_QUERY_THROW );
+ xWindowComponent->dispose();
+ }
+ catch( const Exception& )
+ {
+ DBG_UNHANDLED_EXCEPTION();
+ }
}
diff --git a/sd/source/ui/unoidl/unomodel.cxx b/sd/source/ui/unoidl/unomodel.cxx
index c10c64a02145..f04c3df51b7f 100755
--- a/sd/source/ui/unoidl/unomodel.cxx
+++ b/sd/source/ui/unoidl/unomodel.cxx
@@ -2111,7 +2111,12 @@ void SAL_CALL SdXImpressDocument::render( sal_Int32 nRenderer, const uno::Any& r
{
sal_Int32 nPage = ImplPDFGetBookmarkPage( aIBeg->aBookmark, *mpDoc );
if ( nPage != -1 )
- pPDFExtOutDevData->SetLinkDest( aIBeg->nLinkId, pPDFExtOutDevData->CreateDest( aPageRect, nPage, vcl::PDFWriter::FitRectangle ) );
+ {
+ if ( aIBeg->nLinkId != -1 )
+ pPDFExtOutDevData->SetLinkDest( aIBeg->nLinkId, pPDFExtOutDevData->CreateDest( aPageRect, nPage, vcl::PDFWriter::FitRectangle ) );
+ else
+ pPDFExtOutDevData->DescribeRegisteredDest( aIBeg->nDestId, aPageRect, nPage, vcl::PDFWriter::FitRectangle );
+ }
else
pPDFExtOutDevData->SetLinkURL( aIBeg->nLinkId, aIBeg->aBookmark );
aIBeg++;