diff --git a/examples/cookies-hmac/lib b/examples/cookies-hmac/lib deleted file mode 120000 index 58677dd..0000000 --- a/examples/cookies-hmac/lib +++ /dev/null @@ -1 +0,0 @@ -../../lib \ No newline at end of file diff --git a/examples/cookies/lib b/examples/cookies/lib deleted file mode 120000 index 58677dd..0000000 --- a/examples/cookies/lib +++ /dev/null @@ -1 +0,0 @@ -../../lib \ No newline at end of file diff --git a/examples/extension_testing/lib b/examples/extension_testing/lib deleted file mode 120000 index 58677dd..0000000 --- a/examples/extension_testing/lib +++ /dev/null @@ -1 +0,0 @@ -../../lib \ No newline at end of file diff --git a/examples/form/lib b/examples/form/lib deleted file mode 120000 index 58677dd..0000000 --- a/examples/form/lib +++ /dev/null @@ -1 +0,0 @@ -../../lib \ No newline at end of file diff --git a/examples/form2/lib b/examples/form2/lib deleted file mode 120000 index 58677dd..0000000 --- a/examples/form2/lib +++ /dev/null @@ -1 +0,0 @@ -../../lib \ No newline at end of file diff --git a/examples/lib b/examples/lib deleted file mode 120000 index dc598c5..0000000 --- a/examples/lib +++ /dev/null @@ -1 +0,0 @@ -../lib \ No newline at end of file diff --git a/examples/norxondor_gorgonax/lib b/examples/norxondor_gorgonax/lib deleted file mode 120000 index 58677dd..0000000 --- a/examples/norxondor_gorgonax/lib +++ /dev/null @@ -1 +0,0 @@ -../../lib \ No newline at end of file diff --git a/examples/plugins/lib b/examples/plugins/lib deleted file mode 120000 index 58677dd..0000000 --- a/examples/plugins/lib +++ /dev/null @@ -1 +0,0 @@ -../../lib \ No newline at end of file diff --git a/examples/plugins2/lib b/examples/plugins2/lib deleted file mode 120000 index 58677dd..0000000 --- a/examples/plugins2/lib +++ /dev/null @@ -1 +0,0 @@ -../../lib \ No newline at end of file diff --git a/examples/plugins2/plugin/lib b/examples/plugins2/plugin/lib deleted file mode 120000 index a5bc743..0000000 --- a/examples/plugins2/plugin/lib +++ /dev/null @@ -1 +0,0 @@ -../../../lib \ No newline at end of file diff --git a/examples/query/lib b/examples/query/lib deleted file mode 120000 index 58677dd..0000000 --- a/examples/query/lib +++ /dev/null @@ -1 +0,0 @@ -../../lib \ No newline at end of file diff --git a/examples/templates/lib b/examples/templates/lib deleted file mode 120000 index 58677dd..0000000 --- a/examples/templates/lib +++ /dev/null @@ -1 +0,0 @@ -../../lib \ No newline at end of file diff --git a/examples/uploader/form.ru b/examples/uploader/form.ru index 5aa1f93..88dfb5e 100644 --- a/examples/uploader/form.ru +++ b/examples/uploader/form.ru @@ -18,7 +18,7 @@ app = Landline::Server.new do files[file.filename] = "#{filename}" end end - erubi(file("index.rhtml"), { formdata: files }).run + erb(file("index.rhtml"), { formdata: files }).run end serve "/files/*" get "/" do diff --git a/examples/uploader/lib b/examples/uploader/lib deleted file mode 120000 index d15735c..0000000 --- a/examples/uploader/lib +++ /dev/null @@ -1 +0,0 @@ -../../examples \ No newline at end of file diff --git a/lib/landline/extensions/websocket.rb b/lib/landline/extensions/websocket.rb index 1082328..c3de1b6 100644 --- a/lib/landline/extensions/websocket.rb +++ b/lib/landline/extensions/websocket.rb @@ -93,7 +93,7 @@ module Landline rescue Errno::EPIPE => e @writable = false _emit :error, e - close + close if @readable nil end @@ -188,6 +188,8 @@ module Landline def _process_events(next_frame) loop do frame = next_frame.call + return nil unless frame + case frame.type when :binary, :text, :pong then return frame when :ping @@ -210,7 +212,7 @@ module Landline end rescue Errno::ECONNRESET => e _emit :error, e - close + close if @readable or @writable nil end @@ -224,7 +226,7 @@ module Landline end rescue Errno::ECONNRESET => e _emit :error, e - close + close if @readable or @writable nil end end