From 84cc43413a8577245701e6890d821e3c701a2fb1 Mon Sep 17 00:00:00 2001 From: Gatis Paeglis Date: Mon, 12 Jun 2017 11:01:29 +0200 Subject: Clean-up in QXcbScreen::getOutputProperty() Use the Q_XCB_REPLY() macro and let its unique_ptr<> take care of free()ing the reply. Change-Id: I32eb9c56ea0ba5632bf6ab39c77567d10f442995 Reviewed-by: Edward Welbourne Reviewed-by: Gatis Paeglis --- src/plugins/platforms/xcb/qxcbscreen.cpp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'src/plugins/platforms/xcb/qxcbscreen.cpp') diff --git a/src/plugins/platforms/xcb/qxcbscreen.cpp b/src/plugins/platforms/xcb/qxcbscreen.cpp index 79f37bb028..d097ad79a8 100644 --- a/src/plugins/platforms/xcb/qxcbscreen.cpp +++ b/src/plugins/platforms/xcb/qxcbscreen.cpp @@ -861,17 +861,14 @@ QByteArray QXcbScreen::getOutputProperty(xcb_atom_t atom) const { QByteArray result; - auto cookie = - xcb_randr_get_output_property(xcb_connection(), m_output, - atom, XCB_ATOM_ANY, 0, 100, false, false); - auto reply = xcb_randr_get_output_property_reply(xcb_connection(), cookie, nullptr); + auto reply = Q_XCB_REPLY(xcb_randr_get_output_property, xcb_connection(), + m_output, atom, XCB_ATOM_ANY, 0, 100, false, false); if (reply && reply->type == XCB_ATOM_INTEGER && reply->format == 8) { quint8 *data = new quint8[reply->num_items]; - memcpy(data, xcb_randr_get_output_property_data(reply), reply->num_items); + memcpy(data, xcb_randr_get_output_property_data(reply.get()), reply->num_items); result = QByteArray(reinterpret_cast(data), reply->num_items); delete[] data; } - free(reply); return result; } -- cgit v1.2.3