summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-10-01 13:05:53 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2021-02-02 13:06:16 +0200
commitba6b29a3676bdb7c524c5cd7d3d8f294c22b1d89 (patch)
tree25ddcb84302dee06b3890621c2363f8454af0239 /src
parentbde773ec6a0d9319bd8cebf138513afd79c2eef7 (diff)
Fix inefficient use of qToBigEndian
It can do unaligned access directly as well. Change-Id: I4046cf69e2ad8eb628b8b53bfa521800bb35dc6d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src')
-rw-r--r--src/gui/platform/unix/dbustray/qdbustraytypes.cpp5
1 files changed, 1 insertions, 4 deletions
diff --git a/src/gui/platform/unix/dbustray/qdbustraytypes.cpp b/src/gui/platform/unix/dbustray/qdbustraytypes.cpp
index f2fec41aff..4408bfae5a 100644
--- a/src/gui/platform/unix/dbustray/qdbustraytypes.cpp
+++ b/src/gui/platform/unix/dbustray/qdbustraytypes.cpp
@@ -108,10 +108,7 @@ QXdgDBusImageVector iconToQXdgDBusImageVector(const QIcon &icon)
}
// copy and endian-convert
QXdgDBusImageStruct kim(im.width(), im.height());
- const uchar *end = im.constBits() + im.sizeInBytes();
- uchar *dest = reinterpret_cast<uchar *>(kim.data.data());
- for (const uchar *src = im.constBits(); src < end; src += 4, dest += 4)
- qToUnaligned(qToBigEndian<quint32>(qFromUnaligned<quint32>(src)), dest);
+ qToBigEndian<quint32>(im.constBits(), im.width() * im.height(), kim.data.data());
ret << kim;
}