aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_process.c
diff options
context:
space:
mode:
authorRickard Green <[email protected]>2011-05-11 14:38:24 +0200
committerRickard Green <[email protected]>2011-05-11 14:38:24 +0200
commitaeda9e6b3b28849a27b0f4f5386d000e40a198d0 (patch)
tree4c4dd654fbb1ff4d2144fa2ce6c92e533ffaa969 /erts/emulator/beam/erl_process.c
parent031fd45d17d4887fdd437ae73608e55e76660781 (diff)
downloadotp-aeda9e6b3b28849a27b0f4f5386d000e40a198d0.tar.gz
otp-aeda9e6b3b28849a27b0f4f5386d000e40a198d0.tar.bz2
otp-aeda9e6b3b28849a27b0f4f5386d000e40a198d0.zip
Fix bad assertions
Diffstat (limited to 'erts/emulator/beam/erl_process.c')
-rw-r--r--erts/emulator/beam/erl_process.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/erts/emulator/beam/erl_process.c b/erts/emulator/beam/erl_process.c
index 8c3d21b98f..b286ec0269 100644
--- a/erts/emulator/beam/erl_process.c
+++ b/erts/emulator/beam/erl_process.c
@@ -4686,7 +4686,7 @@ internal_add_to_runq(ErtsRunQueue *runq, Process *p)
if (p->status_flags & ERTS_PROC_SFLG_INRUNQ)
return NULL;
else if (p->runq_flags & ERTS_PROC_RUNQ_FLG_RUNNING) {
- ASSERT(p->rcount == 0);
+ ASSERT(ERTS_PROC_IS_EXITING(p) || p->rcount == 0);
ERTS_DBG_CHK_PROCS_RUNQ_NOPROC(runq, p);
p->status_flags |= ERTS_PROC_SFLG_PENDADD2SCHEDQ;
return NULL;
@@ -4697,7 +4697,7 @@ internal_add_to_runq(ErtsRunQueue *runq, Process *p)
ERTS_DBG_CHK_PROCS_RUNQ_NOPROC(runq, p);
#ifndef ERTS_SMP
/* Never schedule a suspended process (ok in smp case) */
- ASSERT(p->rcount == 0);
+ ASSERT(ERTS_PROC_IS_EXITING(p) || p->rcount == 0);
add_runq = runq;
#else
ASSERT(!p->bound_runq || p->bound_runq == p->run_queue);