From f394b9931ba52515a90bcc43c59c41c36a96df19 Mon Sep 17 00:00:00 2001 From: shugo Date: Sun, 27 Aug 2017 06:32:00 +0000 Subject: lib/net/imap.rb: Accept continuation requests without response text The IMAP server of DOCOMO returns such continuation requests. [ruby-list:50558] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59666 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/net/imap.rb | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'lib') diff --git a/lib/net/imap.rb b/lib/net/imap.rb index dc185183cd..bb6754c732 100644 --- a/lib/net/imap.rb +++ b/lib/net/imap.rb @@ -964,7 +964,7 @@ module Net @idle_done_cond.wait(timeout) @idle_done_cond = nil if @receiver_thread_terminating - raise Net::IMAP::Error, "connection closed" + raise @exception || Net::IMAP::Error.new("connection closed") end ensure unless @receiver_thread_terminating @@ -2268,8 +2268,13 @@ module Net def continue_req match(T_PLUS) - match(T_SPACE) - return ContinuationRequest.new(resp_text, @str) + token = lookahead + if token.symbol == T_SPACE + shift_token + return ContinuationRequest.new(resp_text, @str) + else + return ContinuationRequest.new(ResponseText.new(nil, ""), @str) + end end def response_untagged -- cgit v1.2.3