diff --git a/src/plugins/imageformats/webp/qwebphandler.cpp b/src/plugins/imageformats/webp/qwebphandler.cpp index 7f7bdd9b4700f85f5a53fb4ac896b97afc8f474b..c59bc402717d4a8809200fec38fbc79471710b22 100644 --- a/src/plugins/imageformats/webp/qwebphandler.cpp +++ b/src/plugins/imageformats/webp/qwebphandler.cpp @@ -48,7 +48,6 @@ static const int riffHeaderSize = 12; // RIFF_HEADER_SIZE from webp/format_constants.h QWebpHandler::QWebpHandler() : - m_lossless(false), m_quality(75), m_scanState(ScanNotScanned), m_features(), @@ -250,8 +249,8 @@ bool QWebpHandler::write(const QImage &image) return false; } - config.lossless = m_lossless; - config.quality = m_quality; + config.quality = m_quality < 0 ? 75 : qMin(m_quality, 100); + config.lossless = (config.quality >= 100); picture.writer = pictureWriter; picture.custom_ptr = device(); @@ -289,8 +288,7 @@ void QWebpHandler::setOption(ImageOption option, const QVariant &value) { switch (option) { case Quality: - m_quality = qBound(0, value.toInt(), 100); - m_lossless = (m_quality >= 100); + m_quality = value.toInt(); return; default: break; diff --git a/src/plugins/imageformats/webp/qwebphandler_p.h b/src/plugins/imageformats/webp/qwebphandler_p.h index 99a7c21046d3fb1ded07e425583a28db46a5b42f..950b50156f43638291f6bf25b7e9ccb0bb4553f2 100644 --- a/src/plugins/imageformats/webp/qwebphandler_p.h +++ b/src/plugins/imageformats/webp/qwebphandler_p.h @@ -85,7 +85,6 @@ private: ScanSuccess = 1, }; - bool m_lossless; int m_quality; mutable ScanState m_scanState; WebPBitstreamFeatures m_features;