aboutsummaryrefslogtreecommitdiffstats
path: root/java/org
diff options
context:
space:
mode:
authorJim Porter2024-07-19 18:02:16 -0700
committerJim Porter2024-07-27 13:57:17 -0700
commit50339b38fdef31982744bdb8b51838012dd4ef47 (patch)
treef7c99d102a5fa8688ce680836e6e7ba7cb772613 /java/org
parent8bfdee8689f8b99f353179898e922ec3d975a113 (diff)
downloademacs-50339b38fdef31982744bdb8b51838012dd4ef47.tar.gz
emacs-50339b38fdef31982744bdb8b51838012dd4ef47.zip
Use 'unwind-protect' to ensure that Eshell always closes I/O handles
See bug#72220. * lisp/eshell/esh-cmd.el (eshell-with-handles): New macro... (eshell-commands): ... use it. (eshell-with-copied-handles): Remove STEAL-P and allow multiple body forms (this is an incompatible change, but the macro is currently internal despite the name). (eshell-parse-command, eshell-do-pipelines) (eshell-do-pipelines-synchronously, eshell--invoke-command-directly-p): Remove handle stealing. (eshell-structure-basic-command, eshell-do-command) (eshell-lisp-command): Remove 'eshell-close-handles'. (eshell-protect): Make obsolete. (eshell-rewrite-for-command, eshell-rewrite-while-command) (eshell-rewrite-if-command, (eshell-parse-pipeline): Remove 'eshell-protect'. * lisp/eshell/esh-io.el (eshell-duplicate-handles): Make STEAL-P obsolete. * lisp/eshell/esh-proc.el (eshell-gather-process-output): Call 'eshell-protect-handles' one more time. Remove 'eshell-close-handles'. * lisp/eshell/esh-var.el (eshell-parse-variable-ref): Reimplement $<COMMAND> form using 'eshell-with-handles'. * test/lisp/eshell/esh-cmd-tests.el (esh-cmd-test/command-not-found/pipeline): New test. * test/lisp/eshell/em-tramp-tests.el (em-tramp-test/should-replace-command): Adjust check for 'eshell-with-copied-handles'.
Diffstat (limited to 'java/org')
0 files changed, 0 insertions, 0 deletions