Author: bhupendrab
Date: Mon Mar 26 02:30:02 2007
New Revision: 522463

URL: http://svn.apache.org/viewvc?view=rev&rev=522463
Log:
QPID-408

Modified:
    
incubator/qpid/branches/M2/java/broker/src/main/java/org/apache/qpid/server/queue/ConcurrentSelectorDeliveryManager.java

Modified: 
incubator/qpid/branches/M2/java/broker/src/main/java/org/apache/qpid/server/queue/ConcurrentSelectorDeliveryManager.java
URL: 
http://svn.apache.org/viewvc/incubator/qpid/branches/M2/java/broker/src/main/java/org/apache/qpid/server/queue/ConcurrentSelectorDeliveryManager.java?view=diff&rev=522463&r1=522462&r2=522463
==============================================================================
--- 
incubator/qpid/branches/M2/java/broker/src/main/java/org/apache/qpid/server/queue/ConcurrentSelectorDeliveryManager.java
 (original)
+++ 
incubator/qpid/branches/M2/java/broker/src/main/java/org/apache/qpid/server/queue/ConcurrentSelectorDeliveryManager.java
 Mon Mar 26 02:30:02 2007
@@ -401,7 +401,10 @@
         _lock.lock();
         
         AMQMessage message = _messages.poll();
-        _totalMessageSize.addAndGet(-message.getSize());
+        if (message != null)
+        {
+            _totalMessageSize.addAndGet(-message.getSize());
+        }
 
         _lock.unlock();
     }
@@ -539,7 +542,7 @@
                 {
                     subscriberHasPendingResend(false, sub, null);
                     //better to use the above method as this keeps all the 
tracking in one location.
-//                    _hasContent.remove(sub);
+                    // _hasContent.remove(sub);
                 }
 
                 _extraMessages.decrementAndGet();
@@ -552,7 +555,10 @@
                 }
             }
 
-            _totalMessageSize.addAndGet(-message.getSize());
+            if ((message != null) && (messageQueue == _messages))
+            {
+                _totalMessageSize.addAndGet(-message.getSize());
+            }
         }
         catch (AMQException e)
         {


Reply via email to