diff options
author | iverbin <iverbin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-10-08 19:04:43 +0000 |
---|---|---|
committer | iverbin <iverbin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2015-10-08 19:04:43 +0000 |
commit | 9593413728b796e8d7df4ac12991b5dce47ff3a6 (patch) | |
tree | cc473b0ce992a6b6a8004d8e0c64c388b612ddd0 /liboffloadmic/runtime/offload_env.cpp | |
parent | 27f0420028fe07ce66eba2e48d00cf018fcd2989 (diff) | |
download | gcc-9593413728b796e8d7df4ac12991b5dce47ff3a6.tar.gz |
liboffloadmic: Add missed checks for malloc and strdup return values
liboffloadmic/
* runtime/offload_engine.cpp (Engine::init_process): Use strdup instead
of sizeof+malloc+sprintf, check for return value.
* runtime/offload_env.cpp (MicEnvVar::get_env_var_kind): Check for
strdup return value.
* runtime/offload_host.cpp (__offload_init_library_once): Check for
strdup return value. Fix size calculation of COI_HOST_THREAD_AFFINITY.
* runtime/emulator/coi_device.cpp (COIProcessWaitForShutdown): Check for
malloc return value.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@228622 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'liboffloadmic/runtime/offload_env.cpp')
-rw-r--r-- | liboffloadmic/runtime/offload_env.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/liboffloadmic/runtime/offload_env.cpp b/liboffloadmic/runtime/offload_env.cpp index 79f5f366754..ac33b678942 100644 --- a/liboffloadmic/runtime/offload_env.cpp +++ b/liboffloadmic/runtime/offload_env.cpp @@ -212,10 +212,14 @@ MicEnvVarKind MicEnvVar::get_env_var_kind( *env_var_name_length = 3; *env_var_name = *env_var_def = c; *env_var_def = strdup(*env_var_def); + if (*env_var_def == NULL) + LIBOFFLOAD_ERROR(c_malloc); return c_mic_var; } *env_var_def = c + strlen("ENV="); *env_var_def = strdup(*env_var_def); + if (*env_var_def == NULL) + LIBOFFLOAD_ERROR(c_malloc); return c_mic_card_env; } if (isalpha(*c)) { @@ -229,6 +233,8 @@ MicEnvVarKind MicEnvVar::get_env_var_kind( return c_no_mic; } *env_var_def = strdup(*env_var_def); + if (*env_var_def == NULL) + LIBOFFLOAD_ERROR(c_malloc); return card_is_set? c_mic_card_var : c_mic_var; } |