summaryrefslogtreecommitdiff
path: root/src/protocols/Screencopy.cpp
diff options
context:
space:
mode:
authoroutfoxxed <outfoxxed@outfoxxed.me>2025-01-19 04:51:42 -0800
committerGitHub <noreply@github.com>2025-01-19 12:51:42 +0000
commit086fd7ece8cc8904909f5a597ab69fe73ecac34c (patch)
tree8e902b394fe8b684dbf023bb62d1d1170a14ccac /src/protocols/Screencopy.cpp
parent4da9b7cc5b50c346309378fbb5ae8aa07746fd33 (diff)
protocols: do not destroy screencopy resources before client request (#9048)
Diffstat (limited to 'src/protocols/Screencopy.cpp')
-rw-r--r--src/protocols/Screencopy.cpp4
1 files changed, 0 insertions, 4 deletions
diff --git a/src/protocols/Screencopy.cpp b/src/protocols/Screencopy.cpp
index 5cf54eb4..e0e3a559 100644
--- a/src/protocols/Screencopy.cpp
+++ b/src/protocols/Screencopy.cpp
@@ -28,7 +28,6 @@ CScreencopyFrame::CScreencopyFrame(SP<CZwlrScreencopyFrameV1> resource_, int32_t
if (!pMonitor) {
LOGM(ERR, "Client requested sharing of a monitor that doesnt exist");
resource->sendFailed();
- PROTO::screencopy->destroyResource(this);
return;
}
@@ -46,7 +45,6 @@ CScreencopyFrame::CScreencopyFrame(SP<CZwlrScreencopyFrameV1> resource_, int32_t
if (shmFormat == DRM_FORMAT_INVALID) {
LOGM(ERR, "No format supported by renderer in capture output");
resource->sendFailed();
- PROTO::screencopy->destroyResource(this);
return;
}
@@ -58,7 +56,6 @@ CScreencopyFrame::CScreencopyFrame(SP<CZwlrScreencopyFrameV1> resource_, int32_t
if (!PSHMINFO) {
LOGM(ERR, "No pixel format supported by renderer in capture output");
resource->sendFailed();
- PROTO::screencopy->destroyResource(this);
return;
}
@@ -93,7 +90,6 @@ void CScreencopyFrame::copy(CZwlrScreencopyFrameV1* pFrame, wl_resource* buffer_
if UNLIKELY (!g_pCompositor->monitorExists(pMonitor.lock())) {
LOGM(ERR, "Client requested sharing of a monitor that is gone");
resource->sendFailed();
- PROTO::screencopy->destroyResource(this);
return;
}