mirror of
https://github.com/morgan9e/FreeRDP
synced 2026-04-15 00:44:19 +09:00
[various] add proper return checks
This commit is contained in:
@@ -351,7 +351,6 @@ NSC_CONTEXT* nsc_context_new(void)
|
|||||||
goto error;
|
goto error;
|
||||||
|
|
||||||
context->priv->log = WLog_Get("com.freerdp.codec.nsc");
|
context->priv->log = WLog_Get("com.freerdp.codec.nsc");
|
||||||
WLog_OpenAppender(context->priv->log);
|
|
||||||
context->BitmapData = nullptr;
|
context->BitmapData = nullptr;
|
||||||
context->decode = nsc_decode;
|
context->decode = nsc_decode;
|
||||||
context->encode = nsc_encode;
|
context->encode = nsc_encode;
|
||||||
|
|||||||
@@ -220,7 +220,6 @@ RFX_CONTEXT* rfx_context_new_ex(BOOL encoder, UINT32 ThreadingFlags)
|
|||||||
goto fail;
|
goto fail;
|
||||||
|
|
||||||
priv->log = WLog_Get("com.freerdp.codec.rfx");
|
priv->log = WLog_Get("com.freerdp.codec.rfx");
|
||||||
WLog_OpenAppender(priv->log);
|
|
||||||
priv->TilePool = ObjectPool_New(TRUE);
|
priv->TilePool = ObjectPool_New(TRUE);
|
||||||
|
|
||||||
if (!priv->TilePool)
|
if (!priv->TilePool)
|
||||||
|
|||||||
@@ -81,13 +81,15 @@ BOOL freerdp_addin_argv_del_argument(ADDIN_ARGV* args, const char* argument)
|
|||||||
if (strcmp(argument, arg) == 0)
|
if (strcmp(argument, arg) == 0)
|
||||||
{
|
{
|
||||||
free(arg);
|
free(arg);
|
||||||
memmove_s((void*)&args->argv[x],
|
const BOOL res =
|
||||||
(WINPR_ASSERTING_INT_CAST(uint32_t, args->argc - x)) * sizeof(char*),
|
memmove_s((void*)&args->argv[x],
|
||||||
(void*)&args->argv[x + 1],
|
(WINPR_ASSERTING_INT_CAST(uint32_t, args->argc - x)) * sizeof(char*),
|
||||||
(WINPR_ASSERTING_INT_CAST(uint32_t, args->argc - x - 1)) * sizeof(char*));
|
(void*)&args->argv[x + 1],
|
||||||
|
(WINPR_ASSERTING_INT_CAST(uint32_t, args->argc - x - 1)) *
|
||||||
|
sizeof(char*)) >= 0;
|
||||||
args->argv[args->argc - 1] = nullptr;
|
args->argv[args->argc - 1] = nullptr;
|
||||||
args->argc--;
|
args->argc--;
|
||||||
return TRUE;
|
return res;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return FALSE;
|
return FALSE;
|
||||||
@@ -571,15 +573,17 @@ BOOL freerdp_static_channel_collection_del(rdpSettings* settings, const char* na
|
|||||||
{
|
{
|
||||||
if (strcmp(name, cur->argv[0]) == 0)
|
if (strcmp(name, cur->argv[0]) == 0)
|
||||||
{
|
{
|
||||||
memmove_s((void*)&settings->StaticChannelArray[x],
|
const BOOL success = memmove_s((void*)&settings->StaticChannelArray[x],
|
||||||
(count - x) * sizeof(ADDIN_ARGV*),
|
(count - x) * sizeof(ADDIN_ARGV*),
|
||||||
(void*)&settings->StaticChannelArray[x + 1],
|
(void*)&settings->StaticChannelArray[x + 1],
|
||||||
(count - x - 1) * sizeof(ADDIN_ARGV*));
|
(count - x - 1) * sizeof(ADDIN_ARGV*)) >= 0;
|
||||||
for (size_t y = count - 1; y < settings->StaticChannelArraySize; y++)
|
for (size_t y = count - 1; y < settings->StaticChannelArraySize; y++)
|
||||||
settings->StaticChannelArray[y] = nullptr;
|
settings->StaticChannelArray[y] = nullptr;
|
||||||
|
|
||||||
freerdp_addin_argv_free(cur);
|
freerdp_addin_argv_free(cur);
|
||||||
return freerdp_settings_set_uint32(settings, FreeRDP_StaticChannelCount, count - 1);
|
if (!freerdp_settings_set_uint32(settings, FreeRDP_StaticChannelCount, count - 1))
|
||||||
|
return FALSE;
|
||||||
|
return success;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -677,16 +681,17 @@ BOOL freerdp_dynamic_channel_collection_del(rdpSettings* settings, const char* n
|
|||||||
{
|
{
|
||||||
if (strcmp(name, cur->argv[0]) == 0)
|
if (strcmp(name, cur->argv[0]) == 0)
|
||||||
{
|
{
|
||||||
memmove_s((void*)&settings->DynamicChannelArray[x],
|
const BOOL success = memmove_s((void*)&settings->DynamicChannelArray[x],
|
||||||
(count - x) * sizeof(ADDIN_ARGV*),
|
(count - x) * sizeof(ADDIN_ARGV*),
|
||||||
(void*)&settings->DynamicChannelArray[x + 1],
|
(void*)&settings->DynamicChannelArray[x + 1],
|
||||||
(count - x - 1) * sizeof(ADDIN_ARGV*));
|
(count - x - 1) * sizeof(ADDIN_ARGV*)) >= 0;
|
||||||
for (size_t y = count - 1; y < settings->DynamicChannelArraySize; y++)
|
for (size_t y = count - 1; y < settings->DynamicChannelArraySize; y++)
|
||||||
settings->DynamicChannelArray[y] = nullptr;
|
settings->DynamicChannelArray[y] = nullptr;
|
||||||
|
|
||||||
freerdp_addin_argv_free(cur);
|
freerdp_addin_argv_free(cur);
|
||||||
return freerdp_settings_set_uint32(settings, FreeRDP_DynamicChannelCount,
|
if (!freerdp_settings_set_uint32(settings, FreeRDP_DynamicChannelCount, count - 1))
|
||||||
count - 1);
|
return FALSE;
|
||||||
|
return success;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -322,9 +322,10 @@ static char* arm_create_request_json(rdpArm* arm)
|
|||||||
WINPR_JSON* json = WINPR_JSON_CreateObject();
|
WINPR_JSON* json = WINPR_JSON_CreateObject();
|
||||||
if (!json)
|
if (!json)
|
||||||
goto arm_create_cleanup;
|
goto arm_create_cleanup;
|
||||||
WINPR_JSON_AddStringToObject(
|
if (!WINPR_JSON_AddStringToObject(
|
||||||
json, "application",
|
json, "application",
|
||||||
freerdp_settings_get_string(arm->context->settings, FreeRDP_RemoteApplicationProgram));
|
freerdp_settings_get_string(arm->context->settings, FreeRDP_RemoteApplicationProgram)))
|
||||||
|
goto arm_create_cleanup;
|
||||||
|
|
||||||
lbi = calloc(
|
lbi = calloc(
|
||||||
freerdp_settings_get_uint32(arm->context->settings, FreeRDP_LoadBalanceInfoLength) + 1,
|
freerdp_settings_get_uint32(arm->context->settings, FreeRDP_LoadBalanceInfoLength) + 1,
|
||||||
@@ -339,9 +340,12 @@ static char* arm_create_request_json(rdpArm* arm)
|
|||||||
len);
|
len);
|
||||||
}
|
}
|
||||||
|
|
||||||
WINPR_JSON_AddStringToObject(json, "loadBalanceInfo", lbi);
|
if (!WINPR_JSON_AddStringToObject(json, "loadBalanceInfo", lbi))
|
||||||
WINPR_JSON_AddNullToObject(json, "LogonToken");
|
goto arm_create_cleanup;
|
||||||
WINPR_JSON_AddNullToObject(json, "gatewayLoadBalancerToken");
|
if (!WINPR_JSON_AddNullToObject(json, "LogonToken"))
|
||||||
|
goto arm_create_cleanup;
|
||||||
|
if (!WINPR_JSON_AddNullToObject(json, "gatewayLoadBalancerToken"))
|
||||||
|
goto arm_create_cleanup;
|
||||||
|
|
||||||
message = WINPR_JSON_PrintUnformatted(json);
|
message = WINPR_JSON_PrintUnformatted(json);
|
||||||
arm_create_cleanup:
|
arm_create_cleanup:
|
||||||
|
|||||||
@@ -593,7 +593,8 @@ static BOOL http_proxy_connect(rdpContext* context, BIO* bufferedBio, const char
|
|||||||
const UINT32 timeout =
|
const UINT32 timeout =
|
||||||
freerdp_settings_get_uint32(context->settings, FreeRDP_TcpConnectTimeout);
|
freerdp_settings_get_uint32(context->settings, FreeRDP_TcpConnectTimeout);
|
||||||
|
|
||||||
_itoa_s(port, port_str, sizeof(port_str), 10);
|
if (_itoa_s(port, port_str, sizeof(port_str), 10) < 0)
|
||||||
|
return FALSE;
|
||||||
|
|
||||||
hostLen = strlen(hostname);
|
hostLen = strlen(hostname);
|
||||||
portLen = strnlen(port_str, sizeof(port_str));
|
portLen = strnlen(port_str, sizeof(port_str));
|
||||||
|
|||||||
Reference in New Issue
Block a user