guile-devel
[Top][All Lists]
Advanced

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

Re: port-for-each vs lazy sweep


From: Ludovic Courtès
Subject: Re: port-for-each vs lazy sweep
Date: Mon, 01 Oct 2007 22:23:18 +0200
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.1 (gnu/linux)

Hi,

address@hidden (Ludovic Courtès) writes:

> I noticed the (supposedly related) regression compared to 1.8.  Consider
> this program:
>
>   (define p (open-output-file "TEST-FILE"))
>
>   (setvbuf p _IOFBF 16384)
>
>   (write "hello" p)
>
> When running it with "guile-1.8 the-program.scm", `TEST-FILE' contains
> the string "hello" upon completion.  However, with HEAD, `TEST-FILE' is
> empty.

I finally fixed this one (see attached file).

Thanks,
Ludovic.

--- orig/libguile/ChangeLog
+++ mod/libguile/ChangeLog
@@ -1,3 +1,8 @@
+2007-10-01  Ludovic Courtès  <address@hidden>
+
+       * ports.c (flush_output_port): Expect directly a port instead of
+       a pair.  Fixes a bug in the new port table (2007-08-26).
+
 2007-09-11  Kevin Ryde  <address@hidden>
 
        * posix.c (scm_putenv): Confine the putenv("NAME=") bit to mingw, use


--- orig/libguile/ports.c
+++ mod/libguile/ports.c
@@ -904,9 +904,8 @@
 
 
 static void
-flush_output_port (void *closure, SCM handle)
+flush_output_port (void *closure, SCM port)
 {
-  SCM port = SCM_CDR (handle);
   if (SCM_OPOUTPORTP (port))
     scm_flush (port);
 }




reply via email to

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