diff options
author | Rickard Green <[email protected]> | 2017-01-11 16:53:27 +0100 |
---|---|---|
committer | Rickard Green <[email protected]> | 2017-01-11 16:53:27 +0100 |
commit | 16da88810cc3dccb0d67b7d1bd97874cadf1bc7b (patch) | |
tree | 15a2c98120a7079e91654ef81a747ea9e220e86f /erts/emulator/beam/beam_bif_load.c | |
parent | 2d46cd4302119a46b290520b2b679a8a591adb43 (diff) | |
parent | 9d029dd04ad1a6a9e9725952b83d7cbdddfca088 (diff) | |
download | otp-16da88810cc3dccb0d67b7d1bd97874cadf1bc7b.tar.gz otp-16da88810cc3dccb0d67b7d1bd97874cadf1bc7b.tar.bz2 otp-16da88810cc3dccb0d67b7d1bd97874cadf1bc7b.zip |
Merge branch 'maint'
* maint:
Fix issues with abandoned heap
Conflicts:
erts/emulator/beam/beam_bif_load.c
Diffstat (limited to 'erts/emulator/beam/beam_bif_load.c')
-rw-r--r-- | erts/emulator/beam/beam_bif_load.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/erts/emulator/beam/beam_bif_load.c b/erts/emulator/beam/beam_bif_load.c index 0d725988f0..09331eb8ad 100644 --- a/erts/emulator/beam/beam_bif_load.c +++ b/erts/emulator/beam/beam_bif_load.c @@ -998,6 +998,12 @@ erts_proc_copy_literal_area(Process *c_p, int *redsp, int fcalls, int gc_allowed if (any_heap_refs(c_p->heap, c_p->htop, literals, lit_bsize)) goto literal_gc; *redsp += 1; + if (c_p->abandoned_heap) { + if (any_heap_refs(c_p->abandoned_heap, c_p->abandoned_heap + c_p->heap_sz, + literals, lit_bsize)) + goto literal_gc; + *redsp += 1; + } if (any_heap_refs(c_p->old_heap, c_p->old_htop, literals, lit_bsize)) goto literal_gc; |