ahyatt pushed a commit to branch master
in repository elpa.
commit b6a1a9ee39968bff15edea88ec97da22d46f2c29
Author: Andrew Hyatt
Date: Sat Aug 23 21:17:01 2014 -0400
Upgrade to version 1.3.
* websocket.el: (websocket-version):Update to 1.3
(websocket-close): Remove unnecessary call to process-buffer.
(websocket-close): Remove use of buffers in connections.
(websocket-open): Remove use of buffers in connections.
(websocket-open): Throw clear error when connection cannot be made.
(websocket-create-headers): Remove unnecessary Origin header.
---
packages/websocket/websocket.el | 26 ++
1 files changed, 10 insertions(+), 16 deletions(-)
diff --git a/packages/websocket/websocket.el b/packages/websocket/websocket.el
index 2390615..969e70b 100644
--- a/packages/websocket/websocket.el
+++ b/packages/websocket/websocket.el
@@ -5,7 +5,7 @@
;; Author: Andrew Hyatt
;; Maintainer: Andrew Hyatt
;; Keywords: Communication, Websocket, Server
-;; Version: 1.1
+;; Version: 1.3
;;
;; This program is free software; you can redistribute it and/or
;; modify it under the terms of the GNU General Public License as
@@ -99,7 +99,7 @@ same for the protocols.
accept-string
(inflight-input nil))
-(defvar websocket-version "1.2"
+(defvar websocket-version "1.3"
"Version numbers of this version of websocket.el.")
(defvar websocket-debug nil
@@ -556,9 +556,7 @@ connecting or open."
(make-websocket-frame :opcode 'close
:completep t))
(setf (websocket-ready-state websocket) 'closed))
- (let ((buf (process-buffer (websocket-conn websocket
-(delete-process (websocket-conn websocket))
-(kill-buffer buf)))
+ (delete-process (websocket-conn websocket)))
(defun websocket-ensure-connected (websocket)
"If the WEBSOCKET connection is closed, open it."
@@ -650,7 +648,6 @@ describing the problem with the frame.
(let* ((name (format "websocket to %s" url))
(url-struct (url-generic-parse-url url))
(key (websocket-genkey))
- (buf-name (format " *%s*" name))
(coding-system-for-read 'binary)
(coding-system-for-write 'binary)
(conn (if (member (url-type url-struct) '("ws" "wss"))
@@ -659,13 +656,12 @@ describing the problem with the frame.
(port (if (= 0 (url-port url-struct))
(if (eq type 'tls) 443 80)
(url-port url-struct)))
- (host (url-host url-struct))
- (buf (get-buffer-create buf-name)))
+ (host (url-host url-struct)))
(if (eq type 'plain)
- (make-network-process :name name :buffer buf :host
host
+ (make-network-process :name name :buffer nil :host
host
:service port :nowait nil)
(condition-case-unless-debug nil
- (open-network-stream name buf host port :type
type :nowait nil)
+ (open-network-stream name nil host port :type
type :nowait nil)
(wrong-number-of-arguments
(signal 'websocket-wss-needs-emacs-24 "wss")
(signal 'websocket-unsupported-protocol (url-type
url-struct
@@ -680,6 +676,7 @@ describing the problem with the frame.
:extensions (mapcar 'car extensions)
:accept-string
(websocket-calculate-accept key
+(unless conn (error "Could not establish the websocket connection to %s"
url))
(process-put conn :websocket websocket)
(set-process-filter conn
(lambda (process output)
@@ -797,9 +794,10 @@ in the websocket client function `websocket-open'.
Returns the
connection, which should be kept in order to pass to
`websocket-server-close'."
(let* ((conn (make-network-process
-:name (format "websocket server on port %d" port)
+:name (format "websocket server on port %s" port)
:server t
:family 'ipv4
+:filter 'websocket-server-filter
:log 'websocket-server-accept
:filter-multibyte nil
:plist plist
@@ -840,10 +838,8 @@ connection, which should be kept in order to pass to
:extensions (mapcar 'car (process-get server :extensions)
(unless (member ws websocket-server-websockets)
(push ws websocket-server-websockets))
-(set-process-coding-system client 'unix 'unix)
(process-put client :websocket ws)
-(set-process-filter client 'websocket-server-filter)
-(set-process-coding-system client 'binary)
+(set-process-coding-system client 'binary 'binary)
(set-process-sent