[server] make settings opaque

This commit is contained in:
akallabeth
2023-10-13 12:04:24 +02:00
committed by akallabeth
parent eb445f7c43
commit 1f236ade7a
15 changed files with 466 additions and 273 deletions

View File

@@ -123,16 +123,17 @@ static BOOL wf_peer_post_connect(freerdp_peer* client)
return FALSE;
}
if ((settings->DesktopWidth != wfi->servscreen_width) ||
(settings->DesktopHeight != wfi->servscreen_height))
if ((freerdp_settings_get_uint32(settings, FreeRDP_DesktopWidth) != wfi->servscreen_width) ||
(freerdp_settings_get_uint32(settings, FreeRDP_DesktopHeight) != wfi->servscreen_height))
{
/*
WLog_DBG(TAG, "Client requested resolution %"PRIu32"x%"PRIu32", but will resize to %dx%d",
settings->DesktopWidth, settings->DesktopHeight, wfi->servscreen_width,
freerdp_settings_get_uint32(settings, FreeRDP_DesktopWidth),
freerdp_settings_get_uint32(settings, FreeRDP_DesktopHeight), wfi->servscreen_width,
wfi->servscreen_height);
*/
settings->DesktopWidth = wfi->servscreen_width;
settings->DesktopHeight = wfi->servscreen_height;
freerdp_settings_get_uint32(settings, FreeRDP_DesktopWidth) = wfi->servscreen_width;
freerdp_settings_get_uint32(settings, FreeRDP_DesktopHeight) = wfi->servscreen_height;
if (!freerdp_settings_set_uint32(settings, FreeRDP_ColorDepth, wfi->bitsPerPixel))
return FALSE;
@@ -284,11 +285,14 @@ DWORD WINAPI wf_peer_main_loop(LPVOID lpParam)
settings = client->context->settings;
WINPR_ASSERT(settings);
settings->RemoteFxCodec = TRUE;
if (!freerdp_settings_set_bool(settings, FreeRDP_RemoteFxCodec, TRUE))
goto fail_peer_init;
if (!freerdp_settings_set_uint32(settings, FreeRDP_ColorDepth, 32))
goto fail_peer_init;
settings->NSCodec = FALSE;
settings->JpegCodec = FALSE;
if (!freerdp_settings_set_bool(settings, FreeRDP_NSCodec, FALSE))
goto fail_peer_init;
if (!freerdp_settings_set_bool(settings, FreeRDP_JpegCodec, FALSE))
goto fail_peer_init;
if (!wf_peer_read_settings(client))
goto fail_peer_init;

View File

@@ -180,7 +180,8 @@ void wf_update_peer_send(wfInfo* wfi, wfPeerContext* context)
WINPR_ASSERT(client->context->update);
WINPR_ASSERT(client->context->update->SurfaceBits);
wfi->cmd.bmp.codecID = client->context->settings->RemoteFxCodecId;
wfi->cmd.bmp.codecID =
freerdp_settings_get_uint32(client->context->settings, FreeRDP_RemoteFxCodecId);
client->context->update->SurfaceBits(client->context, &wfi->cmd);
context->frame_idx++;
}