Author: yamakenz
Date: Tue Jul 10 06:46:32 2007
New Revision: 4686

Modified:
   sigscheme-trunk/lib/sigscheme-init.scm

Log:
* lib/sigscheme-init.scm
  - (%%load): New alias for C implementation of 'load'
  - (load): New procedure


Modified: sigscheme-trunk/lib/sigscheme-init.scm
==============================================================================
--- sigscheme-trunk/lib/sigscheme-init.scm      (original)
+++ sigscheme-trunk/lib/sigscheme-init.scm      Tue Jul 10 06:46:32 2007
@@ -49,3 +49,15 @@
      (lambda ()
        (%%set-current-char-codec! codec)
        (thunk)))))
+
+;; Preserve original C implementation.
+(define %%load load)
+
+;; Recover original char codec when an error is occurred on loading.
+(define load
+  (if (provided? "multibyte-char")
+      (lambda (file)
+        (%with-guarded-char-codec
+         (lambda ()
+           (%%load file))))
+      %%load))

Reply via email to