summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Meeks <michael.meeks@novell.com>2011-02-10 17:34:10 +0000
committerMichael Meeks <michael.meeks@novell.com>2011-02-10 17:35:20 +0000
commit29e6053738f10979a9a282d4c14de1af0e5538ab (patch)
tree88781052450f1b4200cea5bf23ea1fca2c2dd921
parent5f8990c7ace7ffaf34e887c28f345ccc304d2548 (diff)
catch exceptions from failing UNO-ness, fdo#33785 backstop.
-rw-r--r--vcl/source/gdi/gdimtf.cxx9
1 files changed, 8 insertions, 1 deletions
diff --git a/vcl/source/gdi/gdimtf.cxx b/vcl/source/gdi/gdimtf.cxx
index faf0d020bb..41e1227858 100644
--- a/vcl/source/gdi/gdimtf.cxx
+++ b/vcl/source/gdi/gdimtf.cxx
@@ -514,7 +514,10 @@ bool GDIMetaFile::ImplPlayWithRenderer( OutputDevice* pOut, const Point& rPos, S
if (!win)
win = Application::GetFirstTopLevelWindow();
- if (win) {
+ if (!win)
+ return false;
+
+ try {
const uno::Reference<rendering::XCanvas>& xCanvas = win->GetCanvas ();
Size aSize (rDestSize.Width () + 1, rDestSize.Height () + 1);
const uno::Reference<rendering::XBitmap>& xBitmap = xCanvas->getDevice ()->createCompatibleAlphaBitmap (vcl::unotools::integerSize2DFromSize( aSize));
@@ -568,6 +571,10 @@ bool GDIMetaFile::ImplPlayWithRenderer( OutputDevice* pOut, const Point& rPos, S
}
}
}
+ } catch( uno::RuntimeException& ) {
+ throw; // runtime errors are fatal
+ } catch( uno::Exception& ) {
+ // ignore errors, no way of reporting them here
}
return false;