[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/plz 5cd6fa19fa: Fix: (plz-clear) Only kill live process
From: |
ELPA Syncer |
Subject: |
[elpa] externals/plz 5cd6fa19fa: Fix: (plz-clear) Only kill live processes |
Date: |
Fri, 30 Jun 2023 18:58:14 -0400 (EDT) |
branch: externals/plz
commit 5cd6fa19fadc27e73d1ffa17508edea30877b328
Author: Adam Porter <adam@alphapapa.net>
Commit: Adam Porter <adam@alphapapa.net>
Fix: (plz-clear) Only kill live processes
Don't try to kill a process that has already finished.
---
README.org | 1 +
plz.el | 3 ++-
plz.info | 31 ++++++++++++++++---------------
3 files changed, 19 insertions(+), 16 deletions(-)
diff --git a/README.org b/README.org
index 49ac7a86c1..24f2b39d12 100644
--- a/README.org
+++ b/README.org
@@ -191,6 +191,7 @@ You may also clear a queue with ~plz-clear~, which cancels
any active or queued
+ STDERR output from curl processes is not included in response bodies (which
sometimes happened, depending on Emacs's internal race conditions). (Fixes
[[https://github.com/alphapapa/plz.el/issues/23][#23]].)
+ Use ~with-local-quit~ for synchronous requests (preventing Emacs from
complaining sometimes). (Fixes
[[https://github.com/alphapapa/plz.el/issues/26][#26]].)
+ Various fixes for ~:as 'buffer~ result type: decode body when appropriate;
unset multibyte for binary; narrow to body; don't kill buffer prematurely.
++ When clearing a queue, don't try to kill finished processes.
*Internal*
+ Response processing now happens outside the process sentinel, so any errors
(e.g. in user callbacks) are not signaled from inside the sentinel. (This
avoids the 2-second pause Emacs imposes in such cases.)
diff --git a/plz.el b/plz.el
index 1cc8f749a9..94b37d99b8 100644
--- a/plz.el
+++ b/plz.el
@@ -692,7 +692,8 @@ have their curl processes killed and their ELSE functions
called
with the corresponding data."
(setf (plz-queue-canceled-p queue) t)
(dolist (request (plz-queue-active queue))
- (kill-process (plz-queued-request-process request))
+ (when (process-live-p (plz-queued-request-process request))
+ (kill-process (plz-queued-request-process request)))
(setf (plz-queue-active queue) (delq request (plz-queue-active queue))))
(dolist (request (plz-queue-requests queue))
(funcall (plz-queued-request-else request)
diff --git a/plz.info b/plz.info
index dfa1a3a713..57434dcbf6 100644
--- a/plz.info
+++ b/plz.info
@@ -335,6 +335,7 @@ File: README.info, Node: 07-pre, Next: 06, Up: Changelog
• Various fixes for ‘:as 'buffer’ result type: decode body when
appropriate; unset multibyte for binary; narrow to body; don’t kill
buffer prematurely.
+ • When clearing a queue, don’t try to kill finished processes.
*Internal*
• Response processing now happens outside the process sentinel, so
@@ -550,21 +551,21 @@ Node: Queueing7448
Node: Tips8831
Node: Changelog9132
Node: 07-pre9401
-Node: 0611219
-Node: 05411834
-Node: 05312077
-Node: 05212393
-Node: 05112600
-Node: 0512852
-Node: 0413058
-Node: 0313964
-Node: 02114412
-Node: 0214563
-Node: 0114694
-Node: Credits14790
-Node: Development15156
-Node: Copyright assignment15670
-Node: License16258
+Node: 0611289
+Node: 05411904
+Node: 05312147
+Node: 05212463
+Node: 05112670
+Node: 0512922
+Node: 0413128
+Node: 0314034
+Node: 02114482
+Node: 0214633
+Node: 0114764
+Node: Credits14860
+Node: Development15226
+Node: Copyright assignment15740
+Node: License16328
End Tag Table
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [elpa] externals/plz 5cd6fa19fa: Fix: (plz-clear) Only kill live processes,
ELPA Syncer <=