aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_gc.c
diff options
context:
space:
mode:
authorSverker Eriksson <[email protected]>2017-04-11 16:28:12 +0200
committerSverker Eriksson <[email protected]>2017-04-11 16:28:12 +0200
commit486a758ef245effab01d880493a0274de49c1797 (patch)
treea506758099a76c92b429f070f3e80b9932c5e916 /erts/emulator/beam/erl_gc.c
parent37bdfb3b5b56c2311db1780b052b7e2c0f139cef (diff)
downloadotp-486a758ef245effab01d880493a0274de49c1797.tar.gz
otp-486a758ef245effab01d880493a0274de49c1797.tar.bz2
otp-486a758ef245effab01d880493a0274de49c1797.zip
erts: Introduce erts_bin_release
Diffstat (limited to 'erts/emulator/beam/erl_gc.c')
-rw-r--r--erts/emulator/beam/erl_gc.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/erts/emulator/beam/erl_gc.c b/erts/emulator/beam/erl_gc.c
index 50805d9cd9..4398da36d8 100644
--- a/erts/emulator/beam/erl_gc.c
+++ b/erts/emulator/beam/erl_gc.c
@@ -2879,9 +2879,7 @@ sweep_off_heap(Process *p, int fullsweep)
case REFC_BINARY_SUBTAG:
{
Binary* bptr = ((ProcBin*)ptr)->val;
- if (erts_refc_dectest(&bptr->refc, 0) == 0) {
- erts_bin_free(bptr);
- }
+ erts_bin_release(bptr);
break;
}
case FUN_SUBTAG:
@@ -2897,8 +2895,7 @@ sweep_off_heap(Process *p, int fullsweep)
ErtsMagicBinary *bptr;
ASSERT(is_magic_ref_thing(ptr));
bptr = ((ErtsMRefThing *) ptr)->mb;
- if (erts_refc_dectest(&bptr->refc, 0) == 0)
- erts_bin_free((Binary *) bptr);
+ erts_bin_release((Binary *) bptr);
break;
}
default: