[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/eglot f594dd7 36/69: jsonrpc-request also calls for def
From: |
João Távora |
Subject: |
[elpa] externals/eglot f594dd7 36/69: jsonrpc-request also calls for deferred action cleanup |
Date: |
Fri, 22 Jun 2018 11:55:00 -0400 (EDT) |
branch: externals/eglot
commit f594dd7f59fa878a085e66e338d251ff1d16017d
Author: João Távora <address@hidden>
Commit: João Távora <address@hidden>
jsonrpc-request also calls for deferred action cleanup
Noticed by Filipp Gunbin <address@hidden>
* jsonrpc.el (jsonrpc--async-request-1): In the non-local exit
also return the id.
(jsonrpc-request): Cleanup deferred actions here too.
---
jsonrpc.el | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/jsonrpc.el b/jsonrpc.el
index c032687..beb3d01 100644
--- a/jsonrpc.el
+++ b/jsonrpc.el
@@ -625,7 +625,7 @@ TIMEOUT is nil)."
method params args)))))
(or timer (setq timer (funcall make-timer))) id)
(jsonrpc--deferred-actions connection))
- (cl-return-from jsonrpc--async-request-1 (list nil timer))))
+ (cl-return-from jsonrpc--async-request-1 (list id timer))))
;; Really send it
;;
(jsonrpc-connection-send connection (jsonrpc-obj :jsonrpc "2.0"
@@ -677,8 +677,10 @@ DEFERRED is passed to `jsonrpc-async-request', which see."
:deferred deferred
:timeout timeout))
(while t (accept-process-output nil 30)))
- (pcase-let ((`(,id ,timer) id-and-timer))
- (when id (remhash id (jsonrpc--request-continuations
connection)))
+ (pcase-let* ((`(,id ,timer) id-and-timer))
+ (remhash id (jsonrpc--request-continuations connection))
+ (remhash (list deferred (current-buffer))
+ (jsonrpc--deferred-actions connection))
(when timer (cancel-timer timer))))))
(when (eq 'error (car retval))
(signal 'jsonrpc-error
- [elpa] externals/eglot 258e3b0 07/69: Merge master into jsonrpc-refactor (using imerge), (continued)
- [elpa] externals/eglot 258e3b0 07/69: Merge master into jsonrpc-refactor (using imerge), João Távora, 2018/06/22
- [elpa] externals/eglot 4bbf810 25/69: Don't return implementation details in jsonrpc-async-request, João Távora, 2018/06/22
- [elpa] externals/eglot 5874af9 32/69: Fix deferred actions (forgot the crucial non-local exit), João Távora, 2018/06/22
- [elpa] externals/eglot 481f16e 33/69: * eglot.el (eglot-eldoc-function): Remove spurious log message, João Távora, 2018/06/22
- [elpa] externals/eglot c43dff4 35/69: On request timeout, clear it from the deferred actions, João Távora, 2018/06/22
- [elpa] externals/eglot 870c60a 04/69: Merge master into jsonrpc-refactor (using imerge), João Távora, 2018/06/22
- [elpa] externals/eglot 980f3e7 34/69: Fix another merge-related bug in eglot-eldoc-function, João Távora, 2018/06/22
- [elpa] externals/eglot fab7f8b 44/69: Improve Makefile test targets, João Távora, 2018/06/22
- [elpa] externals/eglot d7e1b92 42/69: * jsonrpc.el (jsonrpc-message): Fix formatting bug., João Távora, 2018/06/22
- [elpa] externals/eglot 0ba7964 40/69: * jsonrpc.el (jsonrpc-log-event): Log time of event., João Távora, 2018/06/22
- [elpa] externals/eglot f594dd7 36/69: jsonrpc-request also calls for deferred action cleanup,
João Távora <=
- [elpa] externals/eglot dae1de1 41/69: Tweak Makefile to run both tests in a row, João Távora, 2018/06/22
- [elpa] externals/eglot c790274 39/69: jsonrpc--next-request-id is a connection slot, João Távora, 2018/06/22
- [elpa] externals/eglot 68c266e 45/69: Avoid more catastrophes, João Távora, 2018/06/22
- [elpa] externals/eglot bf9c850 52/69: Get rid of jsonrpc-obj, João Távora, 2018/06/22
- [elpa] externals/eglot 0b474ec 63/69: Fix use of jsonrpc-message in tests, João Távora, 2018/06/22
- [elpa] externals/eglot 44e9647 46/69: Simplify JSONRPC connection shutdown, João Távora, 2018/06/22
- [elpa] externals/eglot 47b957d 65/69: Let's not send Content-type for now., João Távora, 2018/06/22
- [elpa] externals/eglot 61d1276 66/69: Fix another bug in jsonrpc-connection-send, João Távora, 2018/06/22
- [elpa] externals/eglot 2917214 47/69: Merge master into jsonrpc-refactor, João Távora, 2018/06/22
- [elpa] externals/eglot f730fff 48/69: Merge branch 'master' into jsonrpc-refactor, João Távora, 2018/06/22