guile-commits
[Top][All Lists]
Advanced

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

[Guile-commits] GNU Guile branch, branch_release-1-8, updated. release_1


From: Neil Jerram
Subject: [Guile-commits] GNU Guile branch, branch_release-1-8, updated. release_1-8-7-6-g1bfae3c
Date: Wed, 23 Sep 2009 20:35:25 +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".

http://git.savannah.gnu.org/cgit/guile.git/commit/?id=1bfae3ccf7589ffcd611a7d58102536d83e4ff68

The branch, branch_release-1-8 has been updated
       via  1bfae3ccf7589ffcd611a7d58102536d83e4ff68 (commit)
      from  7496b0397a6ff2877b9dc568d177d605e6ec24f0 (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 1bfae3ccf7589ffcd611a7d58102536d83e4ff68
Author: Andy Wingo <address@hidden>
Date:   Fri Mar 27 18:47:13 2009 -0700

    bugfix: don't dynamic link if we found a registered extension
    
    * libguile/extensions.c (load_extension): Don't do dynamic linking if we
      actually did find an extension in the list.

-----------------------------------------------------------------------

Summary of changes:
 NEWS                  |    1 +
 libguile/extensions.c |    5 +++++
 2 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/NEWS b/NEWS
index b00b405..20c0f55 100644
--- a/NEWS
+++ b/NEWS
@@ -11,6 +11,7 @@ Changes in 1.8.8 (since 1.8.7)
 
 ** Fix possible buffer overruns when parsing numbers
 ** Avoid clash with system setjmp/longjmp on IA64
+** Don't dynamically link an extension that is already registered
 
 
 Changes in 1.8.7 (since 1.8.6)
diff --git a/libguile/extensions.c b/libguile/extensions.c
index 1090b8b..29cb58c 100644
--- a/libguile/extensions.c
+++ b/libguile/extensions.c
@@ -76,6 +76,7 @@ load_extension (SCM lib, SCM init)
     {
       extension_t *ext;
       char *clib, *cinit;
+      int found = 0;
 
       scm_dynwind_begin (0);
 
@@ -89,10 +90,14 @@ load_extension (SCM lib, SCM init)
            && !strcmp (ext->init, cinit))
          {
            ext->func (ext->data);
+            found = 1;
            break;
          }
 
       scm_dynwind_end ();
+
+      if (found)
+        return;
     }
 
   /* Dynamically link the library. */


hooks/post-receive
-- 
GNU Guile




reply via email to

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