Hello,

Mike Gran <spk...@yahoo.com> writes:

> --- a/libguile/r6rs-ports.c
> +++ b/libguile/r6rs-ports.c
> @@ -210,7 +210,10 @@ static SCM
>  cbp_mark (SCM port)
>  {
>    /* Mark the underlying method and object vector.  */
> -  return SCM_PACK (SCM_STREAM (port));
> +  if (SCM_PTAB_ENTRY (port) != NULL)
> +    return SCM_PACK (SCM_STREAM (port));
> +  else
> +    return SCM_BOOL_F;
>  }

Hmm, how can we have "SCM_PTAB_ENTRY (port) == NULL" at this point?

GC is also unlikely to occur before "SCM_STREAM (port)" is initialized
since "SCM_SETSTREAM ()" is called right after
`scm_new_port_table_entry ()'.

Thanks in advance,
Ludo'.



Reply via email to