From d3fdbbe8cf87957e22e972a73e06a2315b588db1 Mon Sep 17 00:00:00 2001 From: eduar-hte <130087371+eduar-hte@users.noreply.github.com> Date: Wed, 10 Dec 2025 14:54:11 +0000 Subject: [PATCH] Send sample only if there's one to be sent. - This issue was introduced in FreeRDP/FreeRDP@32e64c1e98d9218944a054a5046fc012c15f38aa - If a sample request is received from the server before the camera provides one, an assertion is triggered because an invalid sample is attempted to be sent as a response, as the default initialization of `stream->pendingSample` sets its `length` to its `capacity`. --- channels/rdpecam/client/camera_device_main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/channels/rdpecam/client/camera_device_main.c b/channels/rdpecam/client/camera_device_main.c index bbd8d1228..20a60c579 100644 --- a/channels/rdpecam/client/camera_device_main.c +++ b/channels/rdpecam/client/camera_device_main.c @@ -451,7 +451,7 @@ static UINT ecam_dev_process_sample_request(CameraDevice* dev, GENERIC_CHANNEL_C UINT ret = CHANNEL_RC_OK; stream->samplesRequested++; - if (stream->pendingSample) + if (stream->haveSample) ret = ecam_dev_send_pending(dev, streamIndex, stream); LeaveCriticalSection(&stream->lock);