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))