summaryrefslogtreecommitdiff
path: root/debian/patches/ignore-directory-encoding-errors.patch
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches/ignore-directory-encoding-errors.patch')
-rw-r--r--debian/patches/ignore-directory-encoding-errors.patch35
1 files changed, 35 insertions, 0 deletions
diff --git a/debian/patches/ignore-directory-encoding-errors.patch b/debian/patches/ignore-directory-encoding-errors.patch
new file mode 100644
index 0000000..38508e5
--- /dev/null
+++ b/debian/patches/ignore-directory-encoding-errors.patch
@@ -0,0 +1,35 @@
+Description: ignore errors due to encoding of file
+Author: Sam Steingold <sds@gnu.org>
+Origin: http://thread.gmane.org/gmane.lisp.clisp.devel/21975/focus=21978
+Bug-Debian: http://bugs.debian.org/443520
+Forwarded: not-needed
+
+--- clisp.orig/src/init.lisp
++++ clisp/src/init.lisp
+@@ -1570,6 +1570,10 @@
+ (apply #'format *error-output* format-string args)
+ (elastic-newline *error-output*)
+ nil))))
++
++(unless (fboundp 'ext::muffle-cerrors) ; predef for bootstrap
++ (sys::%putd 'ext::muffle-cerrors #'identity))
++
+ (defun open-for-load (filename extra-file-types external-format
+ &aux stream (present-files t) obj path bad-file)
+ (block open-for-load
+@@ -1639,11 +1643,12 @@
+ ;; File with precisely this name not present OR bad
+ ;; Search among the files the most recent one
+ ;; with the same name and the Extensions "LISP", "FAS":
+- (setq present-files (search-file filename
+- (append extra-file-types
++ (setq present-files
++ (ext::muffle-cerrors ; ignore encoding errors in DIRECTORY
++ (search-file filename (append extra-file-types
+ *compiled-file-types*
+ *source-file-types*)
+- nil)))
++ nil))))
+ (if present-files
+ ;; proceed with the next present file
+ (setq path (car present-files) present-files (cdr present-files)