vcl/skia/salbmp.cxx | 34 ++++++++++++---------------------- 1 file changed, 12 insertions(+), 22 deletions(-)
New commits: commit 8df27fb120fec098db0f5a4cab1bd37ac40e751b Author: Luboš Luňák <l.lu...@collabora.com> AuthorDate: Wed Sep 23 10:36:00 2020 +0200 Commit: Luboš Luňák <l.lu...@collabora.com> CommitDate: Wed Sep 23 12:21:25 2020 +0200 nicer code Change-Id: I391fee76b86bb3fed2f8e840f8b469b6aff3ac2c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103234 Tested-by: Jenkins Reviewed-by: Luboš Luňák <l.lu...@collabora.com> diff --git a/vcl/skia/salbmp.cxx b/vcl/skia/salbmp.cxx index 3c5b21ef1461..d7399855a3ec 100644 --- a/vcl/skia/salbmp.cxx +++ b/vcl/skia/salbmp.cxx @@ -47,6 +47,9 @@ #define CANARY "skia-canary" #endif +// As constexpr here, evaluating it directly in code makes Clang warn about unreachable code. +constexpr bool kN32_SkColorTypeIsBGRA = (kN32_SkColorType == kBGRA_8888_SkColorType); + SkiaSalBitmap::SkiaSalBitmap() {} SkiaSalBitmap::~SkiaSalBitmap() {} @@ -253,23 +256,14 @@ BitmapBuffer* SkiaSalBitmap::AcquireBuffer(BitmapAccessMode nMode) buffer->mnFormat = ScanlineFormat::N8BitPal; break; case 24: - { -// Make the RGB/BGR format match the default Skia 32bpp format, to allow -// easy conversion later. -// Use a macro to hide an unreachable code warning. -#define GET_FORMAT \ - (kN32_SkColorType == kBGRA_8888_SkColorType ? ScanlineFormat::N24BitTcBgr \ - : ScanlineFormat::N24BitTcRgb) - buffer->mnFormat = GET_FORMAT; -#undef GET_FORMAT + // Make the RGB/BGR format match the default Skia 32bpp format, to allow + // easy conversion later. + buffer->mnFormat = kN32_SkColorTypeIsBGRA ? ScanlineFormat::N24BitTcBgr + : ScanlineFormat::N24BitTcRgb; break; - } case 32: -#define GET_FORMAT \ - (kN32_SkColorType == kBGRA_8888_SkColorType ? ScanlineFormat::N32BitTcBgra \ - : ScanlineFormat::N32BitTcRgba) - buffer->mnFormat = GET_FORMAT; -#undef GET_FORMAT + buffer->mnFormat = kN32_SkColorTypeIsBGRA ? ScanlineFormat::N32BitTcBgra + : ScanlineFormat::N32BitTcRgba; break; default: abort(); @@ -542,13 +536,9 @@ SkBitmap SkiaSalBitmap::GetAsSkBitmap() const } else { -// Use a macro to hide an unreachable code warning. -#define GET_FORMAT \ - (kN32_SkColorType == kBGRA_8888_SkColorType ? BitConvert::BGRA : BitConvert::RGBA) - std::unique_ptr<sal_uInt8[]> data - = convertDataBitCount(mBuffer.get(), mPixelsSize.Width(), mPixelsSize.Height(), - mBitCount, mScanlineSize, mPalette, GET_FORMAT); -#undef GET_FORMAT + std::unique_ptr<sal_uInt8[]> data = convertDataBitCount( + mBuffer.get(), mPixelsSize.Width(), mPixelsSize.Height(), mBitCount, mScanlineSize, + mPalette, kN32_SkColorTypeIsBGRA ? BitConvert::BGRA : BitConvert::RGBA); if (!bitmap.installPixels( SkImageInfo::MakeS32(mPixelsSize.Width(), mPixelsSize.Height(), kOpaque_SkAlphaType), _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits