[
https://issues.apache.org/jira/browse/TIKA-2044?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15397226#comment-15397226
]
Vjeran Marcinko commented on TIKA-2044:
---------------------------------------
Ah sorry, unfortunately no, and a bit struggling with free time. I just noticed
that headers are not parsed well, and while debugging noticed that this line:
String latestLine = multiline.poll();
doesn't fetch last line at all (but first one instead), and bug was obvious
just by looking at data structrue used (Queue). After I fixed it locally,
everything was fine with headers.
> MboxParser wrongly concatenates multiple text lines into single header line
> ---------------------------------------------------------------------------
>
> Key: TIKA-2044
> URL: https://issues.apache.org/jira/browse/TIKA-2044
> Project: Tika
> Issue Type: Bug
> Affects Versions: 1.13
> Environment: Tika 1.13, and 1.14 nightly build at the time of this
> writing
> Reporter: Vjeran Marcinko
>
> MboxParser combines multiple text lines into single header value by
> (suposedly) using LIFO structure (stack - java deque), but instead it uses
> FIFO (queue) to fetch last inserted line and to extend it with current line
> in incorrect way:
> Current code:
> Queue<String> multiline = new LinkedList<String>();
> ... few lines below...
> String latestLine = multiline.poll();
> Whereas it should be:
> Deque<String> multiline = new LinkedList<String>();
> ... few lines below...
> String latestLine = multiline.pollLast();
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)