[ 
https://issues.apache.org/jira/browse/DIRMINA-803?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Emmanuel Lecharny resolved DIRMINA-803.
---------------------------------------

    Resolution: Fixed

Fixed with :
http://svn.apache.org/viewvc?rev=1023759&view=rev


> ProtocolCodecFilter.filterWrite() is no longer thread-safe
> ----------------------------------------------------------
>
>                 Key: DIRMINA-803
>                 URL: https://issues.apache.org/jira/browse/DIRMINA-803
>             Project: MINA
>          Issue Type: Bug
>          Components: Filter
>    Affects Versions: 2.0.0
>            Reporter: Stuart Scott
>
> In revision 'r912149 | elecharny | 2010-02-20 22:04:32 +0500 (Sat, 20 Feb 
> 2010)' the loop that flushes the encoded messages was modified and is no 
> longer thread-safe. In the trunk the queue is checked if it is empty then 
> polled for the next element. Between these calls another thread could have 
> taken the last element in the queue and the element is not checked if it is 
> null.
> Starting at line 328:
> while (!bufferQueue.isEmpty()) {
>     Object encodedMessage = bufferQueue.poll();
> ...
> could be replaced with the previous loop:
> for (;;) {
>     Object encodedMessage = bufferQueue.poll();
>     if (encodedMessage == null) {
>         break;
>     }
> ...
> to make the method thread-safe again.
> The same issue exists in ProtocolEncoderOutputImpl.flush().

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to