client/common: Fix leak found by covscan

leaked_storage: Variable "file" going out of scope leaks the storage it points to.
This commit is contained in:
Ondrej Holy 2018-08-17 14:40:12 +02:00
parent e7d5aae514
commit e9549a3bdc

View File

@ -306,6 +306,7 @@ int freerdp_client_settings_parse_assistance_file(rdpSettings* settings,
const char* filename) const char* filename)
{ {
int status; int status;
int ret = -1;
rdpAssistanceFile* file; rdpAssistanceFile* file;
file = freerdp_assistance_file_new(); file = freerdp_assistance_file_new();
@ -315,15 +316,17 @@ int freerdp_client_settings_parse_assistance_file(rdpSettings* settings,
status = freerdp_assistance_parse_file(file, filename); status = freerdp_assistance_parse_file(file, filename);
if (status < 0) if (status < 0)
return -1; goto out;
status = freerdp_client_populate_settings_from_assistance_file(file, settings); status = freerdp_client_populate_settings_from_assistance_file(file, settings);
if (status < 0) if (status < 0)
return -1; goto out;
ret = 0;
out:
freerdp_assistance_file_free(file); freerdp_assistance_file_free(file);
return 0; return ret;
} }
/** Callback set in the rdp_freerdp structure, and used to get the user's password, /** Callback set in the rdp_freerdp structure, and used to get the user's password,