Author: trustin
Date: Mon Aug  6 19:56:29 2007
New Revision: 563375

URL: http://svn.apache.org/viewvc?view=rev&rev=563375
Log:
Fixed bugs reported by Geoff Cadien
* count property is miscalculated in DefaultFileRegion
* A possible ClassCastException in clearWriteRequestQueue()

Modified:
    
mina/trunk/core/src/main/java/org/apache/mina/transport/socket/nio/SocketIoProcessor.java

Modified: 
mina/trunk/core/src/main/java/org/apache/mina/transport/socket/nio/SocketIoProcessor.java
URL: 
http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/transport/socket/nio/SocketIoProcessor.java?view=diff&rev=563375&r1=563374&r2=563375
==============================================================================
--- 
mina/trunk/core/src/main/java/org/apache/mina/transport/socket/nio/SocketIoProcessor.java
 (original)
+++ 
mina/trunk/core/src/main/java/org/apache/mina/transport/socket/nio/SocketIoProcessor.java
 Mon Aug  6 19:56:29 2007
@@ -359,13 +359,18 @@
         WriteRequest req;
 
         if ((req = writeRequestQueue.poll()) != null) {
-            ByteBuffer buf = (ByteBuffer) req.getMessage();
-            // The first unwritten empty buffer must be
-            // forwarded to the filter chain.
-            if (buf.hasRemaining()) {
-                req.getFuture().setWritten(false);
+            Object m = req.getMessage();
+            if (m instanceof ByteBuffer) {
+                ByteBuffer buf = (ByteBuffer) req.getMessage();
+                // The first unwritten empty buffer must be
+                // forwarded to the filter chain.
+                if (buf.hasRemaining()) {
+                    req.getFuture().setWritten(false);
+                } else {
+                    session.getFilterChain().fireMessageSent(session, req);    
                
+                }
             } else {
-                session.getFilterChain().fireMessageSent(session, req);        
            
+                req.getFuture().setWritten(false);
             }
 
             // Discard others.


Reply via email to