[Top][All Lists]

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

[Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.9-20-g104546

From: Mark H Weaver
Subject: [Guile-commits] GNU Guile branch, stable-2.0, updated. v2.0.9-20-g1045460
Date: Mon, 17 Jun 2013 18:55:26 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Guile".

The branch, stable-2.0 has been updated
       via  10454601e03a20cc121d06d8004f96bb2a3b6fb5 (commit)
      from  b16bf64639d457f9cfe8dc7bf80464cd2b86a622 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 10454601e03a20cc121d06d8004f96bb2a3b6fb5
Author: Mark H Weaver <address@hidden>
Date:   Mon Jun 17 14:43:58 2013 -0400

    Fix bug in remqueue in threads.c when removing last element.
    Reported and debugged by Andrew Gaylard <address@hidden>.
    * libguile/threads.c (remqueue): When removing the last element from a
      queue with more than one element, set (car q) to the previous element.
    * THANKS: Thank Andrew Gaylard.


Summary of changes:
 THANKS             |    1 +
 libguile/threads.c |    2 +-
 2 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/THANKS b/THANKS
index a01dcfb..c517cf7 100644
--- a/THANKS
+++ b/THANKS
@@ -77,6 +77,7 @@ For fixes or providing information which led to a fix:
           Aidan Gauland
           Peter Gavin
+         Andrew Gaylard
            Nils Gey
            Eric Gillespie, Jr
          Didier Godefroy
diff --git a/libguile/threads.c b/libguile/threads.c
index c594791..8cbe1e2 100644
--- a/libguile/threads.c
+++ b/libguile/threads.c
@@ -327,7 +327,7 @@ remqueue (SCM q, SCM c)
       if (scm_is_eq (p, c))
          if (scm_is_eq (c, SCM_CAR (q)))
-           SCM_SETCAR (q, SCM_CDR (c));
+            SCM_SETCAR (q, scm_is_eq (prev, q) ? SCM_EOL : prev);
          SCM_SETCDR (prev, SCM_CDR (c));
          /* GC-robust */

GNU Guile

reply via email to

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