[ 
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)

Reply via email to