diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2022-02-02 18:07:07 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2022-02-03 17:18:10 +0000 |
commit | 6843f7fe3d465e517c1d22366b9810ebfd680bf2 (patch) | |
tree | 1631c8bcb3e286081ea577ea2fb726c47727806b | |
parent | 7b1ec22f7474570b04afb06d79ad94e96f929780 (diff) |
Prospective fix for broken QByteArray::__msetitem__() on big endian architectures
Remove a dubious cast from long to const char * which depends
on byte order.
Fixes: PYSIDE-1804
Change-Id: Iee2d809d4e9362b89439b9c56a5fb18e1f91d6fd
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
Reviewed-by: Christian Tismer <tismer@stackless.com>
(cherry picked from commit 0cfddaa56fb560c4ffb3809b7924a0fbb6f3889f)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | sources/pyside6/PySide6/glue/qtcore.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sources/pyside6/PySide6/glue/qtcore.cpp b/sources/pyside6/PySide6/glue/qtcore.cpp index 13cc1727c..218b2d698 100644 --- a/sources/pyside6/PySide6/glue/qtcore.cpp +++ b/sources/pyside6/PySide6/glue/qtcore.cpp @@ -1059,9 +1059,10 @@ if (PyIndex_Check(_key)) { QByteArray temp; if (PyLong_Check(item)) { int overflow; - long ival = PyLong_AsLongAndOverflow(item, &overflow); - // Not suppose to bigger than 255 because only bytes, bytearray, QByteArray were accept - temp = QByteArray(reinterpret_cast<const char *>(&ival)); + const long ival = PyLong_AsLongAndOverflow(item, &overflow); + // Not supposed to be bigger than 255 because only bytes, + // bytearray, QByteArray were accepted + temp.append(char(ival)); } else { temp = %CONVERTTOCPP[QByteArray](item); } |