summaryrefslogtreecommitdiff
path: root/gui-wm/hyprland/files/nvidia-0.25.0.patch
blob: d9d2213607f42da75c703af45e2d8209bb0a63ef (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# From https://github.com/hyprwm/Hyprland/issues/2239#issuecomment-1536725235
# This patch is recommended by the developer on systems running and Nvidia GPu
diff --git a/render/gles2/renderer.c b/render/gles2/renderer.c
index 6a86b183..823fc318 100644
--- a/render/gles2/renderer.c
+++ b/render/gles2/renderer.c
@@ -165,7 +165,7 @@ static bool gles2_bind_buffer(struct wlr_renderer *wlr_renderer,
 		assert(wlr_egl_is_current(renderer->egl));
 
 		push_gles2_debug(renderer);
-		glFlush();
+		glFinish();
 		glBindFramebuffer(GL_FRAMEBUFFER, 0);
 		pop_gles2_debug(renderer);
 
diff --git a/types/output/render.c b/types/output/render.c
index ed1afa4a..ddc730c7 100644
--- a/types/output/render.c
+++ b/types/output/render.c
@@ -225,22 +225,7 @@ struct wlr_drm_format *output_pick_format(struct wlr_output *output,
 }
 
 uint32_t wlr_output_preferred_read_format(struct wlr_output *output) {
-	struct wlr_renderer *renderer = output->renderer;
-	assert(renderer != NULL);
-
-	if (!renderer->impl->preferred_read_format || !renderer->impl->read_pixels) {
-		return DRM_FORMAT_INVALID;
-	}
-
-	if (!output_attach_back_buffer(output, &output->pending, NULL)) {
-		return false;
-	}
-
-	uint32_t fmt = renderer->impl->preferred_read_format(renderer);
-
-	output_clear_back_buffer(output);
-
-	return fmt;
+	return DRM_FORMAT_XRGB8888;
 }
 
 bool output_is_direct_scanout(struct wlr_output *output,