do not detach the output image when setting dots per-meter in QPngHandler::read()

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
This commit is contained in:
Ivailo Monev 2021-12-17 02:05:53 +02:00
parent 7a0ac19823
commit ebd8ff5e17
2 changed files with 4 additions and 7 deletions

View file

@ -212,6 +212,7 @@ private:
friend class QX11PixmapData;
friend class QX11AlphaDetector;
friend class QSpanData;
friend class QPngHandler;
};
Q_DECLARE_TYPEINFO(QImage, Q_MOVABLE_TYPE);

View file

@ -20,13 +20,9 @@
****************************************************************************/
#include "qpnghandler_p.h"
#include "qcoreapplication.h"
#include "qiodevice.h"
#include "qimage.h"
#include "qlist.h"
#include "qtextcodec.h"
#include "qvariant.h"
#include "qvector.h"
#include "qimage_p.h"
#include "qdrawhelper_p.h"
#include "qguicommon_p.h"
@ -339,8 +335,8 @@ bool QPngHandler::read(QImage *image)
png_read_image(png_ptr, row_pointers);
image->setDotsPerMeterX(png_get_x_pixels_per_meter(png_ptr,info_ptr));
image->setDotsPerMeterY(png_get_y_pixels_per_meter(png_ptr,info_ptr));
image->d->dpmx = png_get_x_pixels_per_meter(png_ptr,info_ptr);
image->d->dpmy = png_get_y_pixels_per_meter(png_ptr,info_ptr);
png_read_end(png_ptr, end_info);