summaryrefslogtreecommitdiffstats
path: root/src/gui/image
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2016-07-21 15:16:58 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2016-07-23 07:09:19 +0000
commit5123dba5640c8a8c25ec61194a703add17510401 (patch)
treef9cb230c023299e231964cc779818fbeba78b402 /src/gui/image
parent49926bb9ef983d4c19aed635a00b388252c065e4 (diff)
QImage::setAlphaChannel(): Check result of image conversion
alphaChannel.convertToFormat() may fail due to OOM. Check the obtained image. Task-number: QTBUG-54873 Change-Id: I778b7de7de611105fe23c1c24cbd69bd8f7c72d9 Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
Diffstat (limited to 'src/gui/image')
-rw-r--r--src/gui/image/qimage.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gui/image/qimage.cpp b/src/gui/image/qimage.cpp
index d9f9c1a7ad..60d402289d 100644
--- a/src/gui/image/qimage.cpp
+++ b/src/gui/image/qimage.cpp
@@ -4233,6 +4233,8 @@ void QImage::setAlphaChannel(const QImage &alphaChannel)
} else {
const QImage sourceImage = alphaChannel.convertToFormat(QImage::Format_RGB32);
+ if (sourceImage.isNull())
+ return;
const uchar *src_data = sourceImage.d->data;
uchar *dest_data = d->data;
for (int y=0; y<h; ++y) {