xmloff/source/draw/ximpshap.cxx | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-)
New commits: commit 6ddec950dc642dcf07956cce42c450a0b775963f Author: Stephan Bergmann <[email protected]> AuthorDate: Wed Mar 11 16:06:05 2020 +0100 Commit: Stephan Bergmann <[email protected]> CommitDate: Mon Mar 16 10:14:35 2020 +0100 Avoid -Werror=maybe-uninitialized ...as seen at least with GCC 10 trunk and --enable-optimized, when bMirroredX/Y were used without checking that reading them with >>= had succeeded. Assuming that in this code (added with b4a6977e05d87fe0a79b266ec30e4f403404f1b4 "tdf#129532 tdf#98839 fixes for mirror of custom shapes") it cannot be guaranteed that rItem.Value is of the right type (so o3tl::forceAccess, which uses assert to verify the right type, would not be appropriate), but that it is an exception-worthy error if rItem.Value is not of the right type (so o3tl::doAccess, which throws a css::uno::RuntimeException upon a wrong type, is appropriate). Change-Id: Ibe6991d69a1d6a0c2c41c839c240050a6355e98b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90337 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <[email protected]> diff --git a/xmloff/source/draw/ximpshap.cxx b/xmloff/source/draw/ximpshap.cxx index 99a5d313f1b5..fdfbbc2562a8 100644 --- a/xmloff/source/draw/ximpshap.cxx +++ b/xmloff/source/draw/ximpshap.cxx @@ -87,6 +87,7 @@ #include <basegfx/polygon/b2dpolypolygon.hxx> #include <basegfx/polygon/b2dpolypolygontools.hxx> #include <basegfx/vector/b2dvector.hxx> +#include <o3tl/any.hxx> #include <o3tl/safeint.hxx> using namespace ::com::sun::star; @@ -3774,8 +3775,7 @@ void SdXMLCustomShapeContext::EndElement() if (aI != maCustomShapeGeometry.end()) { beans::PropertyValue& rItem = *aI; - bool bMirroredX; - rItem.Value >>= bMirroredX; + bool bMirroredX = *o3tl::doAccess<bool>(rItem.Value); rItem.Value <<= !bMirroredX; rItem.Handle = -1; rItem.State = beans::PropertyState_DIRECT_VALUE; @@ -3801,8 +3801,7 @@ void SdXMLCustomShapeContext::EndElement() if (aI != maCustomShapeGeometry.end()) { beans::PropertyValue& rItem = *aI; - bool bMirroredY; - rItem.Value >>= bMirroredY; + bool bMirroredY = *o3tl::doAccess<bool>(rItem.Value); rItem.Value <<= !bMirroredY; rItem.Handle = -1; rItem.State = beans::PropertyState_DIRECT_VALUE; _______________________________________________ Libreoffice-commits mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
