bug-guile
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#10616: flush procedure for soft ports isn't called


From: Mark H Weaver
Subject: bug#10616: flush procedure for soft ports isn't called
Date: Thu, 08 Mar 2012 00:06:38 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.92 (gnu/linux)

Hi Ian,

Ian Price <address@hidden> writes:
> From 8a9524014ce85fb34fe5cfd7a2667395ce0cdf5d Mon Sep 17 00:00:00 2001
> From: Ian Price <address@hidden>
> Date: Fri, 27 Jan 2012 06:38:09 +0000
> Subject: [PATCH] Fix flush on soft ports, so that it actually runs.
>
> * libguile/vports.c (sf_flush): Remove conditional testing the
>   position in the port's write_buf, as it is no longer used.
> ---
>  libguile/vports.c |   18 ++++--------------
>  1 files changed, 4 insertions(+), 14 deletions(-)
>
> diff --git a/libguile/vports.c b/libguile/vports.c
> index 5178d79..75e7df3 100644
> --- a/libguile/vports.c
> +++ b/libguile/vports.c
> @@ -56,21 +56,11 @@ sf_flush (SCM port)
>    scm_t_port *pt = SCM_PTAB_ENTRY (port);
>    SCM stream = SCM_PACK (pt->stream);
>  
> -  if (pt->write_pos > pt->write_buf)
> -    {
> -      /* write the byte. */
> -      scm_call_1 (SCM_SIMPLE_VECTOR_REF (stream, 0),
> -               SCM_MAKE_CHAR (*pt->write_buf));
> -      pt->write_pos = pt->write_buf;
> -  
> -      /* flush the output.  */
> -      {
> -     SCM f = SCM_SIMPLE_VECTOR_REF (stream, 2);
> +  SCM f = SCM_SIMPLE_VECTOR_REF (stream, 2);
> +
> +  if (scm_is_true (f))
> +    scm_call_0 (f);
>  
> -     if (scm_is_true (f))
> -       scm_call_0 (f);
> -      }
> -    }
>  }
>  
>  static void

Applied, thanks!

     Mark





reply via email to

[Prev in Thread] Current Thread [Next in Thread]