guile-cvs
[Top][All Lists]
Advanced

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

guile/guile-core/libguile ChangeLog coop.c


From: Mikael Djurfeldt
Subject: guile/guile-core/libguile ChangeLog coop.c
Date: Sat, 06 Oct 2001 12:28:34 -0400

CVSROOT:        /cvs
Module name:    guile
Branch:         branch_release-1-6
Changes by:     Mikael Djurfeldt <address@hidden>       01/10/06 12:28:34

Modified files:
        guile-core/libguile: ChangeLog coop.c 

Log message:
        * coop.c (mother_awake_p): New variable.
        (coop_create): Set mother_awake_p before creating or signalling
        mother; wait until mother is going to sleep before returning.
        (mother): Reset mother_awake_p before going to sleep.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/libguile/ChangeLog.diff?cvsroot=OldCVS&only_with_tag=branch_release-1-6&tr1=1.1465.2.35&tr2=1.1465.2.36&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/guile/guile-core/libguile/coop.c.diff?cvsroot=OldCVS&only_with_tag=branch_release-1-6&tr1=1.27&tr2=1.27.4.1&r1=text&r2=text

Patches:
Index: guile/guile-core/libguile/ChangeLog
diff -u guile/guile-core/libguile/ChangeLog:1.1521 
guile/guile-core/libguile/ChangeLog:1.1522
--- guile/guile-core/libguile/ChangeLog:1.1521  Fri Oct  5 14:26:46 2001
+++ guile/guile-core/libguile/ChangeLog Fri Oct  5 16:18:30 2001
@@ -1,5 +1,44 @@
 2001-10-05  Dirk Herrmann  <address@hidden>
 
+       * options.c (protected_objects, scm_init_options):  The content of
+       protected_objects is now protected from garbage collection using
+       scm_gc_register_root instead of scm_permanent_object.
+
+       (get_option_setting):  New static function that computes an option
+       setting as it was formerly done in the function scm_options.
+
+       (get_documented_option_setting):  New static function that
+       returns option documentation as it was formerly done in the
+       function scm_options.  Note that documentation C strings are no
+       longer precomputed into SCM objects.  Instead, they are converted
+       into SCM strings every time get_documented_option_setting is
+       called.
+
+       (change_option_setting):  New static functions that modifies the
+       option setting as it was formerly done in the function
+       scm_options.  The function is now exception safe, i. e. won't
+       cause a memory leak when interrupted.  Further, only non-immediate
+       option values are added to the protection list.
+
+       (scm_options):  This function now has only the purpose to dispatch
+       to to get_option_setting, get_documented_option_setting or
+       change_option_setting, depending on the arguments given to
+       scm_options.
+
+       (scm_init_opts):  Don't convert documentation C strings into SCM
+       strings.  Further, don't protect any object values:  They _must_
+       be immediate values, otherwise there is no guarantee that they
+       have not been collected before anyway.
+
+       * options.[ch] (scm_t_option):  Made type unsigned, name into a
+       constant char* and val into a scm_t_bits type.
+
+       (scm_options, scm_init_opts):  The number of options is guaranteed
+       to be larger or equal to zero.  Thus, the type is changed to
+       unsigned.
+
+2001-10-05  Dirk Herrmann  <address@hidden>
+
        * num2integral.i.c (NUM2INTEGRAL):  Eliminated some warnings about
        testing an unsigned value for being >= 0.
 
Index: guile/guile-core/libguile/coop.c
diff -u guile/guile-core/libguile/coop.c:1.26 
guile/guile-core/libguile/coop.c:1.27
--- guile/guile-core/libguile/coop.c:1.26       Thu Nov 30 05:26:44 2000
+++ guile/guile-core/libguile/coop.c    Fri Mar  9 22:09:07 2001
@@ -1,4 +1,4 @@
-/*     Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000 Free Software 
Foundation, Inc.
+/*     Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001 Free Software 
Foundation, Inc.
  * 
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -40,9 +40,11 @@
  * If you do not wish that, delete this exception notice.  */
 
 
-/* $Id: coop.c,v 1.26 2000/11/30 10:26:44 dirk Exp $ */
+/* $Id: coop.c,v 1.27 2001/03/10 03:09:07 mdj Exp $ */
 
 /* Cooperative thread library, based on QuickThreads */
+
+#include <stdio.h>
 
 #ifdef HAVE_UNISTD_H 
 #include <unistd.h>



reply via email to

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