summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJuanma Barranquero <lekktu@gmail.com>2022-11-20 21:40:08 +0100
committerJuanma Barranquero <lekktu@gmail.com>2022-11-20 21:40:08 +0100
commit8ec8decd9f1ab642c7f1406b37a89773345b5aba (patch)
treeea5bb0df657b5df28b11a87bc62d92cada280e1a
parent4bc9fe33afa4a2dc063e7c25d6098ad98fcb0208 (diff)
downloademacs-8ec8decd9f1ab642c7f1406b37a89773345b5aba.tar.gz
Avoid native compiler setting user-init-file to warnings.el (bug#59358)
* src/lread.c (maybe_swap_for_eln): Use a delayed warning instead of `display-warning' to avoid a recursive call to Fload while loading the init file that sets `user-init-file' to a bogus value.
-rw-r--r--src/lread.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/lread.c b/src/lread.c
index c28324dc35b..2a57f721943 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -1741,12 +1741,15 @@ maybe_swap_for_eln (bool no_native, Lisp_Object *filename, int *fd,
Vload_path,
Qnil, Qnil)))
return;
- call2 (intern_c_string ("display-warning"),
- Qcomp,
- CALLN (Fformat,
- build_string ("Cannot look up eln file as "
- "no source file was found for %s"),
- *filename));
+ Vdelayed_warnings_list
+ = Fcons (list2
+ (Qcomp,
+ CALLN (Fformat,
+ build_string ("Cannot look up eln "
+ "file as no source file "
+ "was found for %s"),
+ *filename)),
+ Vdelayed_warnings_list);
return;
}
}