aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRickard Green <[email protected]>2015-03-06 09:23:42 +0100
committerRickard Green <[email protected]>2015-03-06 09:23:42 +0100
commit2b69d295dc73f845305a0e2d7763a53657af0725 (patch)
treed42a6d4deddc1ae983558f326f2b082ac6d9c11c
parentaf87b1c3d4897840d8247589a88d3611106ecedc (diff)
downloadotp-2b69d295dc73f845305a0e2d7763a53657af0725.tar.gz
otp-2b69d295dc73f845305a0e2d7763a53657af0725.tar.bz2
otp-2b69d295dc73f845305a0e2d7763a53657af0725.zip
Make access to control_flags safe in non-smp emulator
-rw-r--r--erts/emulator/beam/io.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/erts/emulator/beam/io.c b/erts/emulator/beam/io.c
index 9ae973e108..86fb0a39bf 100644
--- a/erts/emulator/beam/io.c
+++ b/erts/emulator/beam/io.c
@@ -4087,6 +4087,9 @@ erts_port_control(Process* c_p,
size,
&resp_bufp,
&resp_size);
+
+ control_flags = prt->control_flags;
+
finalize_imm_drv_call(&try_call_state);
if (tmp_alloced)
erts_free(ERTS_ALC_T_TMP, bufp);
@@ -4094,8 +4097,6 @@ erts_port_control(Process* c_p,
return ERTS_PORT_OP_BADARG;
}
- control_flags = prt->control_flags;
-
hsz = port_control_result_size(control_flags,
resp_bufp,
&resp_size,