From 6b460f9a7f501eab091befd758069492bc746d75 Mon Sep 17 00:00:00 2001 From: David Edmundson Date: Thu, 21 Sep 2017 14:11:30 +0100 Subject: [PATCH] Only send OutputConfig sendApplied / sendFailed to the right resource Summary: I don't understand the original logic. s_allResources contains /every/ resource, not just outputconfigurations. Sending org_kde_kwin_outputconfiguration_send_applied to a wl_surface (for example), results in an error. The reason kwin doesn't currently crash is because we don't actually send applied/failed after setting outputs. (which is another bug) Test Plan: The existing unit test still passes. Reviewers: #plasma, sebas Reviewed By: #plasma, sebas Subscribers: sebas, plasma-devel, #frameworks Tags: #plasma_on_wayland, #frameworks Differential Revision: https://phabricator.kde.org/D7898 --- src/wayland/server/outputconfiguration_interface.cpp | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/wayland/server/outputconfiguration_interface.cpp b/src/wayland/server/outputconfiguration_interface.cpp index 72d3423288..9d95d1ae5f 100644 --- a/src/wayland/server/outputconfiguration_interface.cpp +++ b/src/wayland/server/outputconfiguration_interface.cpp @@ -227,9 +227,7 @@ void OutputConfigurationInterface::setApplied() void OutputConfigurationInterface::Private::sendApplied() { - for (const auto &r: s_allResources) { - org_kde_kwin_outputconfiguration_send_applied(r->resource); - } + org_kde_kwin_outputconfiguration_send_applied(resource); } void OutputConfigurationInterface::setFailed() @@ -241,9 +239,7 @@ void OutputConfigurationInterface::setFailed() void OutputConfigurationInterface::Private::sendFailed() { - for (const auto &r: s_allResources) { - org_kde_kwin_outputconfiguration_send_failed(r->resource); - } + org_kde_kwin_outputconfiguration_send_failed(resource); } OutputChangeSet* OutputConfigurationInterface::Private::pendingChanges(OutputDeviceInterface *outputdevice)