diff options
author | Thomas Bushnell, BSG <tb@debian.org> | 2006-01-16 11:20:16 -0800 |
---|---|---|
committer | Bryan Newbold <bnewbold@robocracy.org> | 2017-02-20 00:05:33 -0800 |
commit | ff9cb66fee88a090869a2fb452ad49d858fe3b0c (patch) | |
tree | 7979e0ae8599c6e471f278dcdaefe35866689b71 | |
parent | 1dd333954bcb8f993ebbd8fcf25f728f290a7942 (diff) | |
download | slib-ff9cb66fee88a090869a2fb452ad49d858fe3b0c.tar.gz slib-ff9cb66fee88a090869a2fb452ad49d858fe3b0c.zip |
Import Debian changes 3a2-5debian/3a2-5
slib (3a2-5) unstable; urgency=low
* guile.init (slib:load): Use the version that used to be in guile,
which searches paths (not relevant to the present bug) and makes sure
that loaded files land in the slib module (the cause of the present
bug).
* debian/control (slib): No longer conflict with gnucash of any version.
-rw-r--r-- | debian/changelog | 10 | ||||
-rw-r--r-- | debian/control | 2 | ||||
-rw-r--r-- | guile.init | 22 |
3 files changed, 31 insertions, 3 deletions
diff --git a/debian/changelog b/debian/changelog index e08dd62..10d362e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,13 @@ +slib (3a2-5) unstable; urgency=low + + * guile.init (slib:load): Use the version that used to be in guile, + which searches paths (not relevant to the present bug) and makes sure + that loaded files land in the slib module (the cause of the present + bug). + * debian/control (slib): No longer conflict with gnucash of any version. + + -- Thomas Bushnell, BSG <tb@debian.org> Mon, 16 Jan 2006 11:20:16 -0800 + slib (3a2-4) unstable; urgency=high * Unfortunately, slib-3a2 has an undiagnosed interoperability problem diff --git a/debian/control b/debian/control index 1ba8ee3..ad8e191 100644 --- a/debian/control +++ b/debian/control @@ -9,7 +9,7 @@ Package: slib Section: devel Priority: optional Architecture: all -Conflicts: libguile9 (<= 1:1.4-26), guile-1.6-libs (<= 1.6.7-1.1), gnucash (<= 1.8.12-3) +Conflicts: libguile9 (<= 1:1.4-26), guile-1.6-libs (<= 1.6.7-1.1) Description: Portable Scheme library SLIB is a portable scheme library meant to provide compatibility and utility functions for all standard scheme implementations. SLIB @@ -370,8 +370,26 @@ ;;; (let ((load-file (guile:wrap-case-insensitive load))) ;;; (lambda (<pathname>) ;;; (load-file (string-append <pathname> (scheme-file-suffix)))))) -(define (slib:load <pathname>) - (load (string-append <pathname> (scheme-file-suffix)))) +;; Two changes from the normal slib thing here: +;; 1. Load from the path +;; 2. Importantly: guarantee that loaded files land in the slib module. +(define (slib:load name) + (save-module-excursion + (lambda () + (set-current-module slib-module) + (let ((errinfo (catch 'system-error + (lambda () + (load-from-path name) + #f) + (lambda args args)))) + (if (and errinfo + (catch 'system-error + (lambda () + (load-from-path + (string-append name ".scm")) + #f) + (lambda args args))) + (apply throw errinfo)))))) (define slib:load-source slib:load) |