summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorSergio Ahumada <sahumada@blackberry.com>2014-06-14 22:00:17 +0200
committerSergio Ahumada <sahumada@blackberry.com>2014-06-14 22:00:17 +0200
commit8b875cb9054f8e6d44312ef6797367ad38275bb3 (patch)
treee09bd525ae638a2c68a1d933c42c3f683b6dd744 /src
parentf3fb552fd19b53a05b9c7392830569696daf9577 (diff)
parent1c66c5786c35a7d841e0004757cff06da3f9a2cc (diff)
Merge remote-tracking branch 'origin/5.3' into dev
Conflicts: .qmake.conf Change-Id: Iea93fd02ca221e7b36328245f593cbe48cd2771c
Diffstat (limited to 'src')
-rw-r--r--src/plugins/imageformats/webp/qwebphandler.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/plugins/imageformats/webp/qwebphandler.cpp b/src/plugins/imageformats/webp/qwebphandler.cpp
index 8834820..599cb00 100644
--- a/src/plugins/imageformats/webp/qwebphandler.cpp
+++ b/src/plugins/imageformats/webp/qwebphandler.cpp
@@ -137,8 +137,13 @@ bool QWebpHandler::write(const QImage &image)
}
QImage srcImage = image;
+#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN
if (srcImage.format() != QImage::Format_ARGB32)
srcImage = srcImage.convertToFormat(QImage::Format_ARGB32);
+#else /* Q_BIG_ENDIAN */
+ if (srcImage.format() != QImage::Format_RGBA8888)
+ srcImage = srcImage.convertToFormat(QImage::Format_RGBA8888);
+#endif
WebPPicture picture;
WebPConfig config;
@@ -151,7 +156,11 @@ bool QWebpHandler::write(const QImage &image)
picture.width = srcImage.width();
picture.height = srcImage.height();
picture.use_argb = 1;
+#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN
if (!WebPPictureImportBGRA(&picture, srcImage.bits(), srcImage.bytesPerLine())) {
+#else /* Q_BIG_ENDIAN */
+ if (!WebPPictureImportRGBA(&picture, srcImage.bits(), srcImage.bytesPerLine())) {
+#endif
qWarning() << "failed to import image data to webp picture.";
WebPPictureFree(&picture);