diff options
author | Rickard Green <[email protected]> | 2013-04-29 12:59:05 +0200 |
---|---|---|
committer | Rickard Green <[email protected]> | 2013-04-29 12:59:05 +0200 |
commit | febb7963a74930dccccd3d23ef56a54d27fd2549 (patch) | |
tree | c36ce8a6cdea6f02a4f07798a47cb99cf61be362 /erts/emulator/beam/erl_node_tables.c | |
parent | ad7231b1b5227f2ba9baa58c1c436ff9a95d2c67 (diff) | |
download | otp-febb7963a74930dccccd3d23ef56a54d27fd2549.tar.gz otp-febb7963a74930dccccd3d23ef56a54d27fd2549.tar.bz2 otp-febb7963a74930dccccd3d23ef56a54d27fd2549.zip |
Do not treat port_set_data/port_get_data as signals
Diffstat (limited to 'erts/emulator/beam/erl_node_tables.c')
-rw-r--r-- | erts/emulator/beam/erl_node_tables.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/erts/emulator/beam/erl_node_tables.c b/erts/emulator/beam/erl_node_tables.c index ebfba065d1..e688e55c88 100644 --- a/erts/emulator/beam/erl_node_tables.c +++ b/erts/emulator/beam/erl_node_tables.c @@ -1371,6 +1371,7 @@ setup_reference_table(void) /* Insert all ports */ max = erts_ptab_max(&erts_port); for (i = 0; i < max; i++) { + ErlOffHeap *ohp; erts_aint32_t state; Port *prt; @@ -1389,8 +1390,9 @@ setup_reference_table(void) if (ERTS_P_MONITORS(prt)) insert_monitors(ERTS_P_MONITORS(prt), prt->common.id); /* Insert port data */ - for(hfp = prt->bp; hfp; hfp = hfp->next) - insert_offheap(&(hfp->off_heap), HEAP_REF, prt->common.id); + ohp = erts_port_data_offheap(prt); + if (ohp) + insert_offheap(ohp, HEAP_REF, prt->common.id); /* Insert controller */ if (prt->dist_entry) insert_dist_entry(prt->dist_entry, |