39 lines
1.2 KiB
Diff
39 lines
1.2 KiB
Diff
|
|
From 552e3b9b78c136aebedf0a591af04661f0dedbbf Mon Sep 17 00:00:00 2001
|
||
|
|
From: Liang Qi <liang.qi@qt.io>
|
||
|
|
Date: Mon, 31 Jul 2023 05:35:11 +0200
|
||
|
|
Subject: xcb: guard a pointer before usage
|
||
|
|
|
||
|
|
in QXcbAtom::initializeAllAtoms().
|
||
|
|
|
||
|
|
See also the example in
|
||
|
|
https://manpages.debian.org/testing/libxcb-doc/xcb_intern_atom_reply.3.en.html
|
||
|
|
|
||
|
|
Fixes: QTBUG-115599
|
||
|
|
Pick-to: 6.6 6.5 6.2
|
||
|
|
Change-Id: I6590fe1aa11deec7fef7ce6d8f5c49a71d636648
|
||
|
|
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
|
||
|
|
---
|
||
|
|
src/plugins/platforms/xcb/qxcbatom.cpp | 6 ++++--
|
||
|
|
1 file changed, 4 insertions(+), 2 deletions(-)
|
||
|
|
|
||
|
|
diff --git a/src/plugins/platforms/xcb/qxcbatom.cpp b/src/plugins/platforms/xcb/qxcbatom.cpp
|
||
|
|
index 09b1fe8a9d..a456c19490 100644
|
||
|
|
--- a/src/plugins/platforms/xcb/qxcbatom.cpp
|
||
|
|
+++ b/src/plugins/platforms/xcb/qxcbatom.cpp
|
||
|
|
@@ -230,8 +230,10 @@ void QXcbAtom::initializeAllAtoms(xcb_connection_t *connection) {
|
||
|
|
|
||
|
|
for (i = 0; i < QXcbAtom::NAtoms; ++i) {
|
||
|
|
xcb_intern_atom_reply_t *reply = xcb_intern_atom_reply(connection, cookies[i], nullptr);
|
||
|
|
- m_allAtoms[i] = reply->atom;
|
||
|
|
- free(reply);
|
||
|
|
+ if (reply) {
|
||
|
|
+ m_allAtoms[i] = reply->atom;
|
||
|
|
+ free(reply);
|
||
|
|
+ }
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
--
|
||
|
|
cgit v1.2.3
|
||
|
|
|