diff options
author | Jim Blandy <jimb@red-bean.com> | 1999-02-06 22:04:09 +0000 |
---|---|---|
committer | Jim Blandy <jimb@red-bean.com> | 1999-02-06 22:04:09 +0000 |
commit | ba3cad4d80295b38f69ca934afab4050bcbcd6fc (patch) | |
tree | d57469ec59195dcc13955f3103a0ef638f65fd0a | |
parent | 2a2d0d0e815f0ef8d2175278a5662c03e69dadbe (diff) | |
download | guile-ba3cad4d80295b38f69ca934afab4050bcbcd6fc.tar.gz |
* gc.c (scm_gc_sweep): Properly record the size of a freed
structure. (Thanks to Michael Livshin.)
-rw-r--r-- | libguile/gc.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libguile/gc.c b/libguile/gc.c index e2a09ccc9..6e77235f7 100644 --- a/libguile/gc.c +++ b/libguile/gc.c @@ -1113,7 +1113,7 @@ scm_gc_sweep () if ((SCM_CDR (vcell) == 0) || (SCM_CDR (vcell) == 1)) { SCM *p = (SCM *) SCM_GCCDR (scmptr); - m += p[scm_struct_i_n_words] * sizeof (SCM); + m += (p[scm_struct_i_n_words] + 7) * sizeof (SCM); /* I feel like I'm programming in BCPL here... */ free ((char *) p[scm_struct_i_ptr]); } |