diff options
author | Rickard Green <[email protected]> | 2016-05-31 20:01:32 +0200 |
---|---|---|
committer | Rickard Green <[email protected]> | 2016-05-31 20:01:32 +0200 |
commit | 379d30b6f4c57528187a837220c08240e386d639 (patch) | |
tree | cab1350ff630e24b9899e35d9af7f25f91848419 | |
parent | 5add0e9c741379a928f21c783316310fec6de095 (diff) | |
parent | fa0d9d191393e74a579f9c2cacb31b18f715ad6c (diff) | |
download | otp-379d30b6f4c57528187a837220c08240e386d639.tar.gz otp-379d30b6f4c57528187a837220c08240e386d639.tar.bz2 otp-379d30b6f4c57528187a837220c08240e386d639.zip |
Merge branch 'rickard/off_heap-fix/OTP-13366'
* rickard/off_heap-fix/OTP-13366:
Fix bad assertion
Properly close message factories in erts_factory_trim_and_close()
-rw-r--r-- | erts/emulator/beam/erl_message.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/erts/emulator/beam/erl_message.c b/erts/emulator/beam/erl_message.c index ac7b9d6606..71ab92937d 100644 --- a/erts/emulator/beam/erl_message.c +++ b/erts/emulator/beam/erl_message.c @@ -1345,7 +1345,7 @@ erts_prep_msgq_for_inspection(Process *c_p, Process *rp, mpp = i == 0 ? &rp->msg.first : &mip[i-1].msgp->next; - ASSERT((*mpp)->next == bad_mp); + ASSERT(*mpp == bad_mp); erts_msgq_update_internal_pointers(&rp->msg, mpp, &bad_mp->next); @@ -1725,7 +1725,7 @@ void erts_factory_trim_and_close(ErtsHeapFactory* factory, case FACTORY_MESSAGE: { ErtsMessage *mp = factory->message; if (mp->data.attached == ERTS_MSG_COMBINED_HFRAG) { - if (!mp->hfrag.next) { + if (!factory->heap_frags) { Uint sz = factory->hp - factory->hp_start; mp = erts_shrink_message(mp, sz, brefs, brefs_size); factory->message = mp; |