[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master a86205b060: Guard against custom entries that can contain NULs
From: |
Robert Pluim |
Subject: |
master a86205b060: Guard against custom entries that can contain NULs |
Date: |
Wed, 16 Mar 2022 14:02:06 -0400 (EDT) |
branch: master
commit a86205b060b01ab000e439091ed40c8ca8b68b73
Author: Robert Pluim <rpluim@gmail.com>
Commit: Robert Pluim <rpluim@gmail.com>
Guard against custom entries that can contain NULs
There are custom entries that contain lambda's as values by default,
which can result in them containing embedded NULs after
byte-compilation, which wreaks havoc when they are saved to .emacs and
later read in. (Bug#52554)
* lisp/cus-edit.el (custom-save-all): Bind
print-escape-control-characters to t.
* lisp/startup.el (startup--load-user-init-file): Bind
inhibit-null-byte-detection to t.
---
lisp/cus-edit.el | 6 +++++-
lisp/startup.el | 6 +++++-
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el
index 7932031397..dae97b0230 100644
--- a/lisp/cus-edit.el
+++ b/lisp/cus-edit.el
@@ -4798,7 +4798,11 @@ if only the first line of the docstring is shown."))
(delay-mode-hooks (emacs-lisp-mode)))
(let ((inhibit-read-only t)
(print-length nil)
- (print-level nil))
+ (print-level nil)
+ ;; We might be saving byte-code with embedded NULs, which
+ ;; can cause problems when read back, so print them
+ ;; readably. (Bug#52554)
+ (print-escape-control-characters t))
(atomic-change-group
(custom-save-variables)
(custom-save-faces)))
diff --git a/lisp/startup.el b/lisp/startup.el
index 9f0b23c904..ab7b81a707 100644
--- a/lisp/startup.el
+++ b/lisp/startup.el
@@ -1044,7 +1044,11 @@ init-file, or to a default value if loading is not
possible."
(debug-on-error-initial
(if (eq init-file-debug t)
'startup
- init-file-debug)))
+ init-file-debug))
+ ;; The init file might contain byte-code with embedded NULs,
+ ;; which can cause problems when read back, so disable nul
+ ;; byte detection. (Bug#52554)
+ (inhibit-null-byte-detection t))
(let ((debug-on-error debug-on-error-initial))
(condition-case-unless-debug error
(when init-file-user
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- master a86205b060: Guard against custom entries that can contain NULs,
Robert Pluim <=