diff --git a/libfreerdp/common/settings_getters.c b/libfreerdp/common/settings_getters.c index b368a6d7a..ddde63489 100644 --- a/libfreerdp/common/settings_getters.c +++ b/libfreerdp/common/settings_getters.c @@ -1812,6 +1812,12 @@ UINT32 freerdp_settings_get_uint32(const rdpSettings* settings, FreeRDP_Settings case FreeRDP_MonitorFlags: return settings->MonitorFlags; + case FreeRDP_MonitorLocalShiftX: + return settings->MonitorLocalShiftX; + + case FreeRDP_MonitorLocalShiftY: + return settings->MonitorLocalShiftY; + case FreeRDP_MultifragMaxRequestSize: return settings->MultifragMaxRequestSize; @@ -2271,6 +2277,14 @@ BOOL freerdp_settings_set_uint32(rdpSettings* settings, FreeRDP_Settings_Keys_UI settings->MonitorFlags = cnv.c; break; + case FreeRDP_MonitorLocalShiftX: + settings->MonitorLocalShiftX = cnv.c; + break; + + case FreeRDP_MonitorLocalShiftY: + settings->MonitorLocalShiftY = cnv.c; + break; + case FreeRDP_MultifragMaxRequestSize: settings->MultifragMaxRequestSize = cnv.c; break; diff --git a/libfreerdp/common/settings_str.h b/libfreerdp/common/settings_str.h index 30769e3d2..9691e7e89 100644 --- a/libfreerdp/common/settings_str.h +++ b/libfreerdp/common/settings_str.h @@ -362,6 +362,8 @@ static const struct settings_str_entry settings_map[] = { { FreeRDP_MonitorCount, FREERDP_SETTINGS_TYPE_UINT32, "FreeRDP_MonitorCount" }, { FreeRDP_MonitorDefArraySize, FREERDP_SETTINGS_TYPE_UINT32, "FreeRDP_MonitorDefArraySize" }, { FreeRDP_MonitorFlags, FREERDP_SETTINGS_TYPE_UINT32, "FreeRDP_MonitorFlags" }, + { FreeRDP_MonitorLocalShiftX, FREERDP_SETTINGS_TYPE_UINT32, "FreeRDP_MonitorLocalShiftX" }, + { FreeRDP_MonitorLocalShiftY, FREERDP_SETTINGS_TYPE_UINT32, "FreeRDP_MonitorLocalShiftY" }, { FreeRDP_MultifragMaxRequestSize, FREERDP_SETTINGS_TYPE_UINT32, "FreeRDP_MultifragMaxRequestSize" }, { FreeRDP_MultitransportFlags, FREERDP_SETTINGS_TYPE_UINT32, "FreeRDP_MultitransportFlags" }, diff --git a/libfreerdp/core/test/settings_property_lists.h b/libfreerdp/core/test/settings_property_lists.h index 244da35ed..f9df959df 100644 --- a/libfreerdp/core/test/settings_property_lists.h +++ b/libfreerdp/core/test/settings_property_lists.h @@ -281,6 +281,8 @@ static const size_t uint32_list_indices[] = { FreeRDP_MonitorCount, FreeRDP_MonitorDefArraySize, FreeRDP_MonitorFlags, + FreeRDP_MonitorLocalShiftX, + FreeRDP_MonitorLocalShiftY, FreeRDP_MultifragMaxRequestSize, FreeRDP_MultitransportFlags, FreeRDP_NSCodecColorLossLevel, diff --git a/tools/update-settings-tests b/tools/update-settings-tests index 14d6d04bd..582c88e40 100755 --- a/tools/update-settings-tests +++ b/tools/update-settings-tests @@ -324,6 +324,9 @@ try: getter_list = dict(type_list) setter_list = dict(type_list) setter_list2 = dict(type_list) + # Compatibility with older 3.x releases where the value was wrongly an unsigned type + getter_list['UINT32'].append('MonitorLocalShiftX') + getter_list['UINT32'].append('MonitorLocalShiftY') write_getter(f, getter_list, 'BOOL', 'bool', '') write_setter(f, setter_list, 'BOOL', 'bool', '') write_getter(f, getter_list, 'UINT16', 'uint16', '')