Fix inefficient use of qToBigEndian
It can do unaligned access directly as well. Change-Id: I4046cf69e2ad8eb628b8b53bfa521800bb35dc6d Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
This commit is contained in:
parent
bde773ec6a
commit
ba6b29a367
@ -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;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user