summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2014-01-27 15:05:33 +0000
committerMichael Meeks <michael.meeks@collabora.com>2014-01-28 16:55:18 +0000
commit622d57e9e33a63849f0a472c0cb3e94513f784c0 (patch)
tree6b9849346d005cffc1c54b34ea02b4ad05c4cdf0
parent795c5e629987906dea66c690313b3aa1590d7887 (diff)
Resolves: fdo#74051 support 8430x11700 jpegs
Change-Id: I1ca95a496bca80e5e2787af2ccbf0f6cd42455a5 (cherry picked from commit 53c803004554a3a0fff26501357a183bba008a26) Reviewed-on: https://gerrit.libreoffice.org/7697 Reviewed-by: Michael Meeks <michael.meeks@collabora.com> Tested-by: Michael Meeks <michael.meeks@collabora.com>
-rw-r--r--vcl/source/filter/jpeg/JpegReader.cxx6
1 files changed, 3 insertions, 3 deletions
diff --git a/vcl/source/filter/jpeg/JpegReader.cxx b/vcl/source/filter/jpeg/JpegReader.cxx
index c1394711a3f0..86f9dc6e0746 100644
--- a/vcl/source/filter/jpeg/JpegReader.cxx
+++ b/vcl/source/filter/jpeg/JpegReader.cxx
@@ -36,11 +36,11 @@ extern "C"
#define JPEG_MIN_READ 512
#define BUFFER_SIZE 4096
namespace {
- // Arbitrary maximal size (256M) of bitmaps after they have been decoded.
+ // Arbitrary maximal size (512M) of a bitmap after it has been decoded.
// It is used to prevent excessive swapping due to large buffers in
// virtual memory.
// May have to be tuned if it turns out to be too large or too small.
- static const sal_uInt64 MAX_BITMAP_BYTE_SIZE = sal_uInt64(256 * 1024 * 1024);
+ static const sal_uInt64 MAX_BITMAP_BYTE_SIZE = sal_uInt64(512 * 1024 * 1024);
}
extern "C" void* CreateBitmapFromJPEGReader( void* pJPEGReader, void* pJPEGCreateBitmapParam )
@@ -235,7 +235,7 @@ void* JPEGReader::CreateBitmap( void* _pParam )
sal_uInt64 nSize = aSize.Width();
nSize *= aSize.Height();
- if (nSize > SAL_MAX_INT32 / 24)
+ if (nSize > SAL_MAX_INT32 / (bGray?1:3))
return NULL;
// Check if the bitmap is untypically large.