diff options
author | Patrik Nyblom <[email protected]> | 2010-10-07 12:18:40 +0200 |
---|---|---|
committer | Patrik Nyblom <[email protected]> | 2010-10-07 12:18:40 +0200 |
commit | f538ae0a22dabe5f5b0e40e0660aeaea0f5c0768 (patch) | |
tree | d28d88d91769c6f25ae4788505ccad6af6237eaf /erts/lib_src | |
parent | b4a8bc73a9adf3db50a29feb53b64b65ba88c3a2 (diff) | |
parent | 3ffb56672f9b51c5e1080c53b62a3e60983dfdfc (diff) | |
download | otp-f538ae0a22dabe5f5b0e40e0660aeaea0f5c0768.tar.gz otp-f538ae0a22dabe5f5b0e40e0660aeaea0f5c0768.tar.bz2 otp-f538ae0a22dabe5f5b0e40e0660aeaea0f5c0768.zip |
Merge branch 'maint-r14' into dev
Conflicts:
erts/vsn.mk
Diffstat (limited to 'erts/lib_src')
-rw-r--r-- | erts/lib_src/common/erl_misc_utils.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/erts/lib_src/common/erl_misc_utils.c b/erts/lib_src/common/erl_misc_utils.c index 116c9886d8..498ce6837a 100644 --- a/erts/lib_src/common/erl_misc_utils.c +++ b/erts/lib_src/common/erl_misc_utils.c @@ -1228,7 +1228,10 @@ read_topology(erts_cpu_info_t *cpuinfo) nodes++; } - core_id = malloc(sizeof(int)*(packages ? packages : 1)); + if (!packages) { + packages = 1; + } + core_id = malloc(sizeof(int)*packages); if (!core_id) { res = -ENOMEM; goto error; @@ -1286,11 +1289,13 @@ read_topology(erts_cpu_info_t *cpuinfo) * Nodes and packages may not be supported; pretend * that there are one if this is the case... */ - if (!nodes) - cpuinfo->topology[l].node = 0; - if (!packages) - cpuinfo->topology[l].processor = 0; if (slpip[rix].ProcessorMask & (((ULONG_PTR) 1) << l)) { + if (!nodes) { + cpuinfo->topology[l].node = 0; + } + if (!packages) { + cpuinfo->topology[l].processor = 0; + } if (processor < 0) { processor = cpuinfo->topology[l].processor; if (processor < 0) { |