l...@gnu.org (Ludovic Courtès) writes: > Hi Ian, > > I fail to see the patch, and to retrieve it from > <http://bugs.gnu.org/10616>. Could you resend it inline? Bah, that's twice this has happened recently.
-- Ian Price "Programming is like pinball. The reward for doing it well is the opportunity to do it again" - from "The Wizardy Compiled"
>From 8a9524014ce85fb34fe5cfd7a2667395ce0cdf5d Mon Sep 17 00:00:00 2001 From: Ian Price <ianpric...@googlemail.com> 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 -- 1.7.7.6