summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2018-09-21 09:36:59 +0100
committerCaolán McNamara <caolanm@redhat.com>2018-09-21 13:00:13 +0200
commit8d96717154c0c69e46032c10d7e7ddef297a4668 (patch)
tree2ca2736bb589e51682664948b604008444d93754 /sc
parent4a5ed266e64b892dde8a3e36be042e7e9d307eae (diff)
coverity#1401334 Uncaught exception
Change-Id: I2a74e0bcba46b730067b5baca5e934f95ba265ce Reviewed-on: https://gerrit.libreoffice.org/60854 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'sc')
-rw-r--r--sc/source/ui/inc/output.hxx6
-rw-r--r--sc/source/ui/view/output2.cxx10
2 files changed, 9 insertions, 7 deletions
diff --git a/sc/source/ui/inc/output.hxx b/sc/source/ui/inc/output.hxx
index 0546bd544f7a..e915a71e0aed 100644
--- a/sc/source/ui/inc/output.hxx
+++ b/sc/source/ui/inc/output.hxx
@@ -27,6 +27,7 @@
#include <com/sun/star/embed/XEmbeddedObject.hpp>
#include <drawinglayer/processor2d/baseprocessor2d.hxx>
#include <editeng/svxenum.hxx>
+#include <o3tl/deleter.hxx>
namespace sc {
struct SpellCheckContext;
@@ -58,6 +59,7 @@ enum ScOutputType { OUTTYPE_WINDOW, OUTTYPE_PRINTER };
class ScFieldEditEngine;
class ClearableClipRegion;
+typedef std::unique_ptr<ClearableClipRegion, o3tl::default_delete<ClearableClipRegion>> ClearableClipRegionPtr;
class ScOutputData
{
@@ -247,8 +249,8 @@ private:
void ShowClipMarks( DrawEditParam& rParam, long nEngineHeight, const Size& aCellSize,
bool bMerged, OutputAreaParam& aAreaParam );
- std::unique_ptr<ClearableClipRegion> Clip( DrawEditParam& rParam, const Size& aCellSize, OutputAreaParam& aAreaParam,
- long nEngineHeight, bool bWrapFields );
+ ClearableClipRegionPtr Clip(DrawEditParam& rParam, const Size& aCellSize, OutputAreaParam& aAreaParam,
+ long nEngineHeight, bool bWrapFields);
bool AdjustAreaParamClipRect(OutputAreaParam& rAreaParam);
long SetEngineTextAndGetWidth( DrawEditParam& rParam, const OUString& rSetString,
diff --git a/sc/source/ui/view/output2.cxx b/sc/source/ui/view/output2.cxx
index 522dfba38f0b..2a381039cad0 100644
--- a/sc/source/ui/view/output2.cxx
+++ b/sc/source/ui/view/output2.cxx
@@ -2773,7 +2773,7 @@ public:
}
}
- ~ClearableClipRegion()
+ ~ClearableClipRegion() COVERITY_NOEXCEPT_FALSE
{
// Pop() or SetClipRegion() must only be called in case bClip was true
// in the ctor, and only then mpDev is set.
@@ -3185,7 +3185,7 @@ void ScOutputData::ShowClipMarks( DrawEditParam& rParam, long nEngineHeight, con
}
}
-std::unique_ptr<ClearableClipRegion> ScOutputData::Clip( DrawEditParam& rParam, const Size& aCellSize,
+ClearableClipRegionPtr ScOutputData::Clip( DrawEditParam& rParam, const Size& aCellSize,
OutputAreaParam& aAreaParam, long nEngineHeight,
bool bWrapFields)
{
@@ -3214,9 +3214,9 @@ std::unique_ptr<ClearableClipRegion> ScOutputData::Clip( DrawEditParam& rParam,
}
// Clip marks are already handled in GetOutputArea
- return std::unique_ptr<ClearableClipRegion>( new ClearableClipRegion( rParam.mbPixelToLogic ?
- mpRefDevice->PixelToLogic( aAreaParam.maClipRect )
- : aAreaParam.maClipRect, bClip, bSimClip, mpDev, bMetaFile ));
+ return ClearableClipRegionPtr(new ClearableClipRegion(rParam.mbPixelToLogic ?
+ mpRefDevice->PixelToLogic(aAreaParam.maClipRect)
+ : aAreaParam.maClipRect, bClip, bSimClip, mpDev, bMetaFile));
}
void ScOutputData::DrawEditBottomTop(DrawEditParam& rParam)