diff options
author | Ocke Janssen <oj@openoffice.org> | 2011-03-04 07:53:39 +0100 |
---|---|---|
committer | Ocke Janssen <oj@openoffice.org> | 2011-03-04 07:53:39 +0100 |
commit | 3f554df00ffd78a070ce642694c4b55e3df78133 (patch) | |
tree | d0a72db95abd4075ad0c684ee93827bd64934b85 /sd | |
parent | f2aeec8f22f37146c2f9120e8d0ead383049c1fa (diff) | |
parent | 1fc659a8eacf409985606d21b48cce81101ff88a (diff) |
Automated merge with file:///d:\tools\master\ooo
Diffstat (limited to 'sd')
-rwxr-xr-x | sd/source/ui/framework/factories/BasicViewFactory.cxx | 15 | ||||
-rwxr-xr-x | sd/source/ui/unoidl/unomodel.cxx | 7 |
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++; |