[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/websocket e9d148fbb6 064/114: Merge pull request #52 fr
From: |
ELPA Syncer |
Subject: |
[elpa] externals/websocket e9d148fbb6 064/114: Merge pull request #52 from yuya373/fix-nowait |
Date: |
Wed, 15 Feb 2023 20:59:00 -0500 (EST) |
branch: externals/websocket
commit e9d148fbb6425c35dc7f76cccdec70aba7fafacf
Merge: 7d2adf2187 b3a0153c0b
Author: Andrew Hyatt <ahyatt@gmail.com>
Commit: GitHub <noreply@github.com>
Merge pull request #52 from yuya373/fix-nowait
execute handshake after connection opened
---
websocket.el | 30 +++++++++++++++++++++---------
1 file changed, 21 insertions(+), 9 deletions(-)
diff --git a/websocket.el b/websocket.el
index 3d83b3a950..b7d62f45de 100644
--- a/websocket.el
+++ b/websocket.el
@@ -728,14 +728,27 @@ to the websocket protocol.
(websocket-outer-filter websocket output))))
(set-process-sentinel
conn
- (lambda (process change)
- (let ((websocket (process-get process :websocket)))
- (websocket-debug websocket "State change to %s" change)
- (when (and
- (member (process-status process) '(closed failed exit signal))
- (not (eq 'closed (websocket-ready-state websocket))))
- (websocket-try-callback 'websocket-on-close 'on-close websocket)))))
+ (websocket-sentinel url conn key protocols extensions custom-header-alist
nowait))
(set-process-query-on-exit-flag conn nil)
+ (unless nowait
+ (websocket-handshake url conn key protocols extensions
custom-header-alist))
+ websocket))
+
+(defun websocket-sentinel (url conn key protocols extensions
custom-header-alist nowait)
+ #'(lambda (process change)
+ (let ((websocket (process-get process :websocket)))
+ (websocket-debug websocket "State change to %s" change)
+ (let ((status (process-status process)))
+ (when (and nowait (eq status 'open))
+ (websocket-handshake url conn key protocols extensions
custom-header-alist))
+
+ (when (and (member status '(closed failed exit signal))
+ (not (eq 'closed (websocket-ready-state websocket))))
+ (websocket-try-callback 'websocket-on-close 'on-close
websocket))))))
+
+(defun websocket-handshake (url conn key protocols extensions
custom-header-alist)
+ (let ((url-struct (url-generic-parse-url url))
+ (websocket (process-get conn :websocket)))
(process-send-string conn
(format "GET %s HTTP/1.1\r\n"
(let ((path (url-filename url-struct)))
@@ -745,8 +758,7 @@ to the websocket protocol.
(process-send-string conn
(websocket-create-headers
url key protocols extensions custom-header-alist))
- (websocket-debug websocket "Websocket opened")
- websocket))
+ (websocket-debug websocket "Websocket opened")))
(defun websocket-process-headers (url headers)
"On opening URL, process the HEADERS sent from the server."
- [elpa] externals/websocket bcbd5258b2 040/114: Add note to windows users for functional tests., (continued)
- [elpa] externals/websocket bcbd5258b2 040/114: Add note to windows users for functional tests., ELPA Syncer, 2023/02/15
- [elpa] externals/websocket d407c0ad0f 041/114: Update version to 1.6., ELPA Syncer, 2023/02/15
- [elpa] externals/websocket 8f55a95698 042/114: Fix indentation., ELPA Syncer, 2023/02/15
- [elpa] externals/websocket f94d43b97c 046/114: Prevent emacs from asking users about killing server process on exit, ELPA Syncer, 2023/02/15
- [elpa] externals/websocket fbd9e2263d 047/114: Merge pull request #47 from alpha22jp/master, ELPA Syncer, 2023/02/15
- [elpa] externals/websocket a9b8e74fa1 048/114: Update version to 1.8, ELPA Syncer, 2023/02/15
- [elpa] externals/websocket f7f7ad6d45 052/114: when nowait, delay handshake after process move to open status, ELPA Syncer, 2023/02/15
- [elpa] externals/websocket 13520c8baa 054/114: add documentation for nowait, ELPA Syncer, 2023/02/15
- [elpa] externals/websocket 4ca406fb96 060/114: Merge branch 'custom-headers', ELPA Syncer, 2023/02/15
- [elpa] externals/websocket b3a0153c0b 063/114: remove long line lambda, ELPA Syncer, 2023/02/15
- [elpa] externals/websocket e9d148fbb6 064/114: Merge pull request #52 from yuya373/fix-nowait,
ELPA Syncer <=
- [elpa] externals/websocket 607355db44 067/114: rename to `websocket-ensure-handshake`, ELPA Syncer, 2023/02/15
- [elpa] externals/websocket 0d96ba2ff5 069/114: Merge fix for 32-bit emacs., ELPA Syncer, 2023/02/15
- [elpa] externals/websocket a5a3ddb5ca 072/114: Fix all signal calls., ELPA Syncer, 2023/02/15
- [elpa] externals/websocket ef1e504fec 075/114: Fix tests broken by recent changes., ELPA Syncer, 2023/02/15
- [elpa] externals/websocket da237af723 076/114: Fix confusing documentation string in `websocket-openp'., ELPA Syncer, 2023/02/15
- [elpa] externals/websocket 53bfd56e12 078/114: Upgrade version number to 1.11., ELPA Syncer, 2023/02/15
- [elpa] externals/websocket de8073d667 079/114: Is encode-coding-string (quote utf-8) necessary?, ELPA Syncer, 2023/02/15
- [elpa] externals/websocket 73eb210eb0 081/114: Merge pull request #59 from dickmao/state-change, ELPA Syncer, 2023/02/15
- [elpa] externals/websocket fa751be5b7 083/114: Add new test for correct websocket frame encoding., ELPA Syncer, 2023/02/15
- [elpa] externals/websocket d91a9aef5a 084/114: Update version to 1.11.1., ELPA Syncer, 2023/02/15