Fix handling of permanent-local variables in 'kill-all-local-variables'
authorEli Zaretskii <eliz@gnu.org>
Sun, 10 Nov 2024 18:49:45 +0000 (20:49 +0200)
committerEli Zaretskii <eliz@gnu.org>
Sun, 10 Nov 2024 18:49:45 +0000 (20:49 +0200)
commit90c97d3fac989f3048fda4a30a626bec2c3301c5
treee1044348239560496cf8055ee8c3b0c6d5be9416
parentc96e57609076c4d5627e698a6f12a731a77c365e
Fix handling of permanent-local variables in 'kill-all-local-variables'

The original implementation went too far and caused unexpected
results.
* src/buffer.c (reset_buffer_local_variables): Second argument is
now 'int', and can be 0, 1, or 2.
(Fkill_all_local_variables): Call 'reset_buffer_local_variables'
with 2nd argument 2 if KILL-PERMANENT is non-nil.  (Bug#74091)
src/buffer.c