include/vcl/BitmapTools.hxx | 4 ++-- vcl/source/bitmap/BitmapTools.cxx | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-)
New commits: commit 457204cfce253450283de1c96b9178f4d9246405 Author: Noel Grandin <noel.gran...@collabora.co.uk> Date: Mon Feb 12 15:31:18 2018 +0200 fix pixel address calculation in RawBitmap Change-Id: I42476a8049330ff02c555ecba49b49f3cf012086 Reviewed-on: https://gerrit.libreoffice.org/49599 Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk> Tested-by: Noel Grandin <noel.gran...@collabora.co.uk> diff --git a/include/vcl/BitmapTools.hxx b/include/vcl/BitmapTools.hxx index 6339994a285d..6dc88967526e 100644 --- a/include/vcl/BitmapTools.hxx +++ b/include/vcl/BitmapTools.hxx @@ -19,7 +19,7 @@ namespace vcl { namespace bitmap { /** - * intended to be used to feed into CreateFromData to create a BitmapEx + * Intended to be used to feed into CreateFromData to create a BitmapEx. RGB data format. */ class VCL_DLLPUBLIC RawBitmap { @@ -34,7 +34,7 @@ public: } void SetPixel(long nY, long nX, BitmapColor nColor) { - long p = nY * maSize.getWidth() + nX; + long p = (nY * maSize.getWidth() + nX) * 3; mpData[ p++ ] = nColor.GetRed(); mpData[ p++ ] = nColor.GetGreen(); mpData[ p ] = nColor.GetBlue(); diff --git a/vcl/source/bitmap/BitmapTools.cxx b/vcl/source/bitmap/BitmapTools.cxx index 767b4de7e25a..5f3d1062275e 100644 --- a/vcl/source/bitmap/BitmapTools.cxx +++ b/vcl/source/bitmap/BitmapTools.cxx @@ -151,7 +151,7 @@ BitmapEx CreateFromData( RawBitmap&& rawBitmap ) auto nWidth = rawBitmap.maSize.getWidth(); for( long y = 0; y < nHeight; ++y ) { - sal_uInt8 const *p = rawBitmap.mpData.get() + y * nWidth; + sal_uInt8 const *p = rawBitmap.mpData.get() + (y * nWidth * 3); Scanline pScanline = pWrite->GetScanline(y); for (long x = 0; x < nWidth; ++x) { _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits