bug: NoMethodError: undefined method `match' for in_reply_to (#3641)

Fixes #3615
This commit is contained in:
Tejaswini Chile
2021-12-22 22:33:18 +05:30
committed by GitHub
parent 44486fc8e1
commit c57c975a0d
4 changed files with 16 additions and 11 deletions

View File

@@ -63,14 +63,19 @@ class ReplyMailbox < ApplicationMailbox
# find conversation uuid from below pattern
# <conversation/#{@conversation.uuid}/messages/#{@messages&.last&.id}@#{@account.inbound_email_domain}>
def find_conversation_with_in_reply_to
in_reply_to = mail.in_reply_to
match_result = in_reply_to.match(ApplicationMailbox::CONVERSATION_MESSAGE_ID_PATTERN) if in_reply_to.present?
if match_result
find_conversation_by_uuid(match_result)
else
find_conversation_by_message_id(in_reply_to)
match_result = nil
in_reply_to_addresses = mail.in_reply_to
in_reply_to_addresses = [in_reply_to_addresses] if in_reply_to_addresses.is_a?(String)
in_reply_to_addresses.each do |in_reply_to|
match_result = in_reply_to.match(::ApplicationMailbox::CONVERSATION_MESSAGE_ID_PATTERN)
break if match_result
end
find_by_in_reply_to_addresses(match_result, in_reply_to_addresses)
end
def find_by_in_reply_to_addresses(match_result, in_reply_to_addresses)
find_conversation_by_uuid(match_result) if match_result
find_conversation_by_message_id(in_reply_to_addresses) if @conversation.blank?
end
def verify_decoded_params