aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_process.c
diff options
context:
space:
mode:
authorRickard Green <[email protected]>2015-05-25 09:11:44 +0200
committerRickard Green <[email protected]>2015-05-25 09:11:44 +0200
commit67217a3f8bfe1685f38aa7497ede1d19427ba865 (patch)
tree6ed579f7722f29953fee0da41695bbe2bbdfd0c8 /erts/emulator/beam/erl_process.c
parent7172142d969a3f38c6b1b64c46fc63fecf4105c6 (diff)
parent79729c7d95cfc2b163c55071589e83019247c5a1 (diff)
downloadotp-67217a3f8bfe1685f38aa7497ede1d19427ba865.tar.gz
otp-67217a3f8bfe1685f38aa7497ede1d19427ba865.tar.bz2
otp-67217a3f8bfe1685f38aa7497ede1d19427ba865.zip
Merge branch 'rickard/timer-improvement/OTP-12650'
* rickard/timer-improvement/OTP-12650: Fix bug causing timeout to overwrite exit instruction Doc fixes
Diffstat (limited to 'erts/emulator/beam/erl_process.c')
-rw-r--r--erts/emulator/beam/erl_process.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/erts/emulator/beam/erl_process.c b/erts/emulator/beam/erl_process.c
index af8db519d4..0a8897320d 100644
--- a/erts/emulator/beam/erl_process.c
+++ b/erts/emulator/beam/erl_process.c
@@ -9649,7 +9649,7 @@ Process *schedule(Process *p, int calls)
ASSERT(erts_proc_read_refc(p) > 0);
- if (ERTS_PTMR_IS_TIMED_OUT(p)) {
+ if (!(state & ERTS_PSFLG_EXITING) && ERTS_PTMR_IS_TIMED_OUT(p)) {
BeamInstr** pi;
#ifdef ERTS_SMP
ETHR_MEMBAR(ETHR_LoadLoad|ETHR_LoadStore);