aboutsummaryrefslogtreecommitdiff
path: root/src/capture/kms.c
diff options
context:
space:
mode:
authordec05eba <dec05eba@protonmail.com>2025-03-13 01:38:26 +0100
committerdec05eba <dec05eba@protonmail.com>2025-03-13 01:38:26 +0100
commitaf5468410376f6b8cb3a0c6e3fb46636e03299f8 (patch)
treed43bc60461ae593831f3e717bb74266315441c55 /src/capture/kms.c
parent92492db788e97db028176c942e9aed047f8f152a (diff)
Fix screenshot with region not working correctly for some sizes and possibly crashing
Diffstat (limited to 'src/capture/kms.c')
-rw-r--r--src/capture/kms.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/src/capture/kms.c b/src/capture/kms.c
index f0a635e..9693c58 100644
--- a/src/capture/kms.c
+++ b/src/capture/kms.c
@@ -221,16 +221,14 @@ static int gsr_capture_kms_start(gsr_capture *cap, gsr_capture_metadata *capture
if(self->params.output_resolution.x > 0 && self->params.output_resolution.y > 0) {
self->params.output_resolution = scale_keep_aspect_ratio(self->capture_size, self->params.output_resolution);
- capture_metadata->width = FFALIGN(self->params.output_resolution.x, 2);
- capture_metadata->height = FFALIGN(self->params.output_resolution.y, 2);
+ capture_metadata->width = self->params.output_resolution.x;
+ capture_metadata->height = self->params.output_resolution.y;
} else if(self->params.region_size.x > 0 && self->params.region_size.y > 0) {
- self->params.output_resolution = self->params.region_size;
- capture_metadata->width = FFALIGN(self->params.region_size.x, 2);
- capture_metadata->height = FFALIGN(self->params.region_size.y, 2);
+ capture_metadata->width = self->params.region_size.x;
+ capture_metadata->height = self->params.region_size.y;
} else {
- self->params.output_resolution = self->capture_size;
- capture_metadata->width = FFALIGN(self->capture_size.x, 2);
- capture_metadata->height = FFALIGN(self->capture_size.y, 2);
+ capture_metadata->width = self->capture_size.x;
+ capture_metadata->height = self->capture_size.y;
}
self->fast_path_failed = self->params.egl->gpu_info.vendor == GSR_GPU_VENDOR_AMD && !gl_driver_version_greater_than(&self->params.egl->gpu_info, 24, 0, 9);