summaryrefslogtreecommitdiffstats
path: root/src/gui/image
diff options
context:
space:
mode:
authorChristian Ehrlicher <ch.ehrlicher@gmx.de>2019-01-25 22:09:46 +0100
committerChristian Ehrlicher <ch.ehrlicher@gmx.de>2019-01-30 17:38:25 +0000
commit0bde49bd92b0d4366b91c5cdd1585e0e1fb623bc (patch)
tree1acefd2250fbfff136a6ec84ffdae5ef076dac29 /src/gui/image
parentf383fa4b9c64e319cb9b8a63ca88368ad752db27 (diff)
QPictureIO::read(): don't work on dangling pointer
QPictureIO::read() is using pictureFormat() when the format has to be guessed. pictureFormat() returns a QByteArray which was implicit casted into a char* and then pointed to uninitialized memory. Fix it by using a QByteArray instead a plain char*. Change-Id: If9ae286ed68134af597f0b0c779789e40f9efaed Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/gui/image')
-rw-r--r--src/gui/image/qpicture.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/gui/image/qpicture.cpp b/src/gui/image/qpicture.cpp
index 7eede5ee26..2f2f85f68d 100644
--- a/src/gui/image/qpicture.cpp
+++ b/src/gui/image/qpicture.cpp
@@ -1866,7 +1866,7 @@ QList<QByteArray> QPictureIO::outputFormats()
bool QPictureIO::read()
{
QFile file;
- const char *picture_format;
+ QByteArray picture_format;
QPictureHandler *h;
if (d->iodev) { // read from io device
@@ -1882,7 +1882,7 @@ bool QPictureIO::read()
if (d->frmt.isEmpty()) {
// Try to guess format
picture_format = pictureFormat(d->iodev); // get picture format
- if (!picture_format) {
+ if (picture_format.isEmpty()) {
if (file.isOpen()) { // unknown format
file.close();
d->iodev = 0;