changeset 101042:edc1b75fdb15

Fix Bug #876: (info-insert-file-contents, Info-insert-dir): Bind inhibit-null-byte-detection to non-nil.
author Eli Zaretskii <eliz@gnu.org>
date Sat, 10 Jan 2009 10:42:08 +0000
parents 23f3fc056f3b
children 5b62466eb65b
files lisp/info.el
diffstat 1 files changed, 7 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/info.el	Sat Jan 10 10:41:23 2009 +0000
+++ b/lisp/info.el	Sat Jan 10 10:42:08 2009 +0000
@@ -461,13 +461,15 @@
 	  (insert-file-contents-literally fullname visit)
 	  (let ((inhibit-read-only t)
 		(coding-system-for-write 'no-conversion)
+		(inhibit-null-byte-detection t) ; Index nodes include null bytes
 		(default-directory (or (file-name-directory fullname)
 				       default-directory)))
 	    (or (consp decoder)
 		(setq decoder (list decoder)))
 	    (apply 'call-process-region (point-min) (point-max)
 		   (car decoder) t t nil (cdr decoder))))
-      (insert-file-contents fullname visit))))
+      (let ((inhibit-null-byte-detection t)) ; Index nodes include null bytes
+	(insert-file-contents fullname visit)))))
 
 (defun Info-file-supports-index-cookies (&optional file)
   "Return non-nil value if FILE supports Info index cookies.
@@ -1094,7 +1096,10 @@
 		      (or buffers
 			  (message "Composing main Info directory..."))
 		      (condition-case nil
-			  (progn
+			  ;; Index nodes include null bytes.  DIR
+			  ;; files should not have indices, but who
+			  ;; knows...
+			  (let ((inhibit-null-byte-detection t))
 			    (insert-file-contents file)
 			    (set (make-local-variable 'Info-dir-file-name)
 				 file)