diff --git a/pkg/noun/allocate.c b/pkg/noun/allocate.c index 10f79637e1..515e744295 100644 --- a/pkg/noun/allocate.c +++ b/pkg/noun/allocate.c @@ -2311,11 +2311,11 @@ _ca_print_leak(c3_c* cap_c, u3a_box* box_u, c3_ws use_ws) u3a_print_memory(stderr, " size", box_u->siz_w); - { - c3_c* dat_c = _ca_print_box(box_u); - fprintf(stderr, " data: %s\r\n", dat_c); - c3_free(dat_c); - } + // { + // c3_c* dat_c = _ca_print_box(box_u); + // fprintf(stderr, " data: %s\r\n", dat_c); + // c3_free(dat_c); + // } } #endif diff --git a/pkg/noun/manage.c b/pkg/noun/manage.c index 2178fc7fa7..2dbc6a8fac 100644 --- a/pkg/noun/manage.c +++ b/pkg/noun/manage.c @@ -2451,17 +2451,21 @@ _migrate_memoization() rod_u.cax.har_p = rud_u->cax.har_p; - // carefully place new road over the old one + // prepare the new home + hom_u.arv_u = hum_u->arv_u; + hom_u.rod_u = rod_u; + hom_u.ver_w = U3V_VER3; + + // place the new home over the old one c3_w siz_w = c3_wiseof(u3v_home); c3_w *mat_w = c3_align(mem_w + len_w - siz_w, u3C.balign_d, C3_ALGLO); - memcpy(mat_w, &rod_u, sizeof(u3a_road)); - - // update version - hum_u->ver_w = U3V_VER3; + memcpy(mat_w, &hom_u, sizeof(u3v_home)); - u3H = (u3v_home*)hum_u; + // set globals + u3H = (void*)mat_w; u3R = &u3H->rod_u; + // initialize persistent cache u3R->cax.per_p = u3h_new_cache(u3C.per_w); u3m_pack();