emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] 23/119: handle close-connection thrown during header parse


From: Eric Schulte
Subject: [elpa] 23/119: handle close-connection thrown during header parse
Date: Mon, 10 Mar 2014 16:57:06 +0000

eschulte pushed a commit to branch master
in repository elpa.

commit 912ad475e497db63396d827dd703ec4929e2f35a
Author: Eric Schulte <address@hidden>
Date:   Wed Dec 18 23:46:51 2013 -0700

    handle close-connection thrown during header parse
---
 emacs-web-server.el |   15 ++++++++-------
 1 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/emacs-web-server.el b/emacs-web-server.el
index b085723..efcfb5c 100644
--- a/emacs-web-server.el
+++ b/emacs-web-server.el
@@ -131,13 +131,14 @@ function.
   (with-slots (handler clients) (plist-get (process-plist proc) :server)
     (unless (assoc proc clients)
       (push (cons proc (make-instance 'ews-client)) clients))
-    (let ((client (cdr (assoc proc clients))))
-      (when (ews-do-filter client string)
-        (when (not (eq (catch 'close-connection
-                         (ews-call-handler proc (cdr (headers client)) 
handler))
-                       :keep-open))
-          (setq clients (assq-delete-all proc clients))
-          (delete-process proc))))))
+    (let ((c (cdr (assoc proc clients))))
+      (when (not (eq (catch 'close-connection
+                       (if (ews-do-filter c string)
+                           (ews-call-handler proc (cdr (headers c)) handler)
+                         :keep-open))
+                     :keep-open))
+        (setq clients (assq-delete-all proc clients))
+        (delete-process proc)))))
 
 (defun ews-do-filter (client string)
   "Return non-nil when finished and the client may be deleted."



reply via email to

[Prev in Thread] Current Thread [Next in Thread]