summaryrefslogtreecommitdiff
path: root/etc
diff options
context:
space:
mode:
authorPhilipp Stephani <phst@google.com>2019-01-02 22:04:56 +0100
committerPhilipp Stephani <phst@google.com>2019-02-24 22:43:07 +0100
commit72ec233f2a1b8a6a9574e61588d0467caf41755c (patch)
tree725add4413feb9cb7789576294099096e63d3044 /etc
parent5653b76d0bacf1edfc3d962c0bb991344cd80f6f (diff)
downloademacs-72ec233f2a1b8a6a9574e61588d0467caf41755c.tar.gz
Ignore pending_signals when checking for quits.
pending_signals is often set if no quit is pending. This results in bugs in module code if the module returns but no quit is actually pending. As a better alternative, add a new process_input environment function for Emacs 27. That function processes signals (like maybe_quit). * configure.ac: Add module snippet for Emacs 27. * src/module-env-27.h: New file. * src/emacs-module.h.in: Add process_input function to environment interface. * src/emacs-module.c (module_should_quit): Use QUITP macro to check whether the caller should quit. (module_process_input): New function. (initialize_environment): Use it. * src/eval.c: Remove obsolete comment. * test/data/emacs-module/mod-test.c (signal_wrong_type_argument) (signal_errno): New helper functions. (Fmod_test_sleep_until): New test module function. * test/src/emacs-module-tests.el (mod-test-sleep-until): New unit test. * doc/lispref/internals.texi (Module Misc): Document process_input.
Diffstat (limited to 'etc')
-rw-r--r--etc/NEWS3
1 files changed, 3 insertions, 0 deletions
diff --git a/etc/NEWS b/etc/NEWS
index 67e376d9b38..8acbf6d3a7f 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -1614,6 +1614,9 @@ given frame supports resizing.
This is currently supported on GNUish hosts and on modern versions of
MS-Windows.
+** New module environment function 'process_input' to process user
+input while module code is running.
+
* Changes in Emacs 27.1 on Non-Free Operating Systems