You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mime4j-dev@james.apache.org by "Artur Jablonski (JIRA)" <mi...@james.apache.org> on 2017/08/16 15:40:00 UTC

[jira] [Created] (MIME4J-263) DecoderUtil.decodeEncodedWords() doesn't decode an encoded empty string

Artur Jablonski created MIME4J-263:
--------------------------------------

             Summary: DecoderUtil.decodeEncodedWords() doesn't decode an encoded empty string
                 Key: MIME4J-263
                 URL: https://issues.apache.org/jira/browse/MIME4J-263
             Project: James Mime4j
          Issue Type: Bug
          Components: parser (core)
            Reporter: Artur Jablonski
            Priority: Minor


{{DecoderUtil.decodeEncodedWords()}} returns an unencoded string if the word to decode is empty.

For example

{{DecoderUtil.decodeEncodedWords("=?utf-8?Q??=", DecodeMonitor.SILENT)}}

returns

{{"=?utf-8?Q??="}}

instead of empty string (or perhaps null)

The problem lies in the regexp that is used behind the scenes that requires at least one character:

{code}
private static final Pattern PATTERN_ENCODED_WORD = Pattern.compile(
            "(.*?)=\\?(.+?)\\?(\\w)\\?(.+?)\\?=", Pattern.DOTALL);
{code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)