diff options
author | Ivan Maidanski <ivmai@mail.ru> | 2018-05-23 11:43:04 +0300 |
---|---|---|
committer | Ivan Maidanski <ivmai@mail.ru> | 2018-05-23 11:43:04 +0300 |
commit | e12e820f357d1f58fbefb0e73ca559edfa251681 (patch) | |
tree | d46185d692b257db7f5b1517b485cf4c5649bf5a /cord/cordxtra.c | |
parent | f72fc9d43c1659224e0986a6a8fa3d0349eedd14 (diff) | |
download | bdwgc-e12e820f357d1f58fbefb0e73ca559edfa251681.tar.gz |
Fix cords for MANUAL_VDB
* cord/cordbscs.c (CORD_cat_char_star, CORD CORD_cat,
CORD_from_fn_inner, CORD_substr_closure): Call GC_end_stubborn_change.
* cord/cordxtra.c (refill_cache): Likewise.
* cord/tests/de.c (prune_map, add_map, add_hist, replace_line,
generic_init): Likewise.
Diffstat (limited to 'cord/cordxtra.c')
-rw-r--r-- | cord/cordxtra.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/cord/cordxtra.c b/cord/cordxtra.c index 5ee4df73..d29f3444 100644 --- a/cord/cordxtra.c +++ b/cord/cordxtra.c @@ -547,6 +547,8 @@ static char refill_cache(refill_data * client_data) new_cache -> tag = DIV_LINE_SZ(file_pos); /* Store barrier goes here. */ ATOMIC_WRITE(state -> lf_cache[line_no], new_cache); + GC_end_stubborn_change((/* no volatile */ void *)(state -> lf_cache + + line_no)); state -> lf_current = line_start + LINE_SZ; return(new_cache->data[MOD_LINE_SZ(file_pos)]); } |