Merge pull request #10985 from akallabeth/settings-fix

[core,settings] fix initialization of ComputerName
This commit is contained in:
akallabeth
2024-12-16 14:22:01 +01:00
committed by GitHub
4 changed files with 11 additions and 14 deletions

View File

@@ -1056,7 +1056,7 @@ static BOOL client_cli_get_rdsaad_access_token(freerdp* instance, const char* sc
printf("Paste redirect URL here: \n");
if (freerdp_interruptible_get_line(instance->context, &url, &size, stdin) < 0)
return FALSE;
goto cleanup;
char* code = extract_authorization_code(url);
if (!code)

View File

@@ -1096,9 +1096,9 @@ BOOL rpc_client_write_call(rdpRpc* rpc, wStream* s, UINT16 opnum)
request_pdu.auth_verifier.auth_context_id = 0x00000000;
offset += (8 + request_pdu.header.auth_length);
if (offset > UINT32_MAX)
if (offset > UINT16_MAX)
goto fail;
request_pdu.header.frag_length = (UINT32)offset;
request_pdu.header.frag_length = (UINT16)offset;
buffer = (BYTE*)calloc(1, request_pdu.header.frag_length);
if (!buffer)

View File

@@ -326,7 +326,9 @@ static BOOL settings_init_computer_name(rdpSettings* settings)
if (!GetComputerNameExA(ComputerNameNetBIOS, computerName, &nSize))
return FALSE;
return freerdp_settings_set_string(settings, FreeRDP_ComputerName, computerName);
if (!freerdp_settings_set_string(settings, FreeRDP_ComputerName, computerName))
return FALSE;
return freerdp_settings_set_string(settings, FreeRDP_ClientHostname, computerName);
}
void freerdp_settings_print_warnings(const rdpSettings* settings)

View File

@@ -146,6 +146,7 @@ int rdtk_font_text_draw_size(rdtkFont* font, uint16_t* width, uint16_t* height,
return 1;
}
WINPR_ATTR_MALLOC(free, 1)
static char* rdtk_font_load_descriptor_file(const char* filename, size_t* pSize)
{
WINPR_ASSERT(filename);
@@ -170,7 +171,7 @@ static char* rdtk_font_load_descriptor_file(const char* filename, size_t* pSize)
if (fileSize.i64 < 1)
goto fail;
uint8_t* buffer = (uint8_t*)malloc(fileSize.s + 2);
char* buffer = (char*)calloc(fileSize.s + 4, sizeof(char));
if (!buffer)
goto fail;
@@ -193,7 +194,7 @@ static char* rdtk_font_load_descriptor_file(const char* filename, size_t* pSize)
buffer[fileSize.s] = '\0';
buffer[fileSize.s + 1] = '\0';
*pSize = fileSize.s;
return (char*)buffer;
return buffer;
fail:
(void)fclose(fp);
@@ -238,16 +239,12 @@ static int rdtk_font_convert_descriptor_code_to_utf8(const char* str, uint8_t* u
return 1;
}
static int rdtk_font_parse_descriptor_buffer(rdtkFont* font, const char* sbuffer, size_t size)
static int rdtk_font_parse_descriptor_buffer(rdtkFont* font, char* buffer, size_t size)
{
int rc = -1;
WINPR_ASSERT(font);
char* buffer = strndup(sbuffer, size);
if (!buffer)
goto fail;
const char xmlversion[] = "<?xml version=\"1.0\" encoding=\"utf-8\"?>";
const char xmlfont[] = "<Font ";
@@ -670,7 +667,6 @@ static rdtkFont* rdtk_embedded_font_new(rdtkEngine* engine, const uint8_t* image
size_t descriptorSize)
{
size_t size = 0;
uint8_t* buffer = NULL;
WINPR_ASSERT(engine);
@@ -697,14 +693,13 @@ static rdtkFont* rdtk_embedded_font_new(rdtkEngine* engine, const uint8_t* image
}
size = descriptorSize;
buffer = (uint8_t*)malloc(size);
char* buffer = (char*)calloc(size + 4, sizeof(char));
if (!buffer)
goto fail;
CopyMemory(buffer, descriptorData, size);
const int status2 = rdtk_font_parse_descriptor_buffer(font, buffer, size);
free(buffer);
if (status2 < 0)
goto fail;