summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Godfrey <rgodfrey@apache.org>2008-05-29 10:35:02 +0000
committerRobert Godfrey <rgodfrey@apache.org>2008-05-29 10:35:02 +0000
commit93231105b481b4b0cffb326eda97c8996fa2ccee (patch)
tree2c2aba9c74fea9d3ac39cf75f4e71182042c8de3
parent9591ca6d7ccf622941d7642346f89dddf06bdef2 (diff)
downloadqpid-python-93231105b481b4b0cffb326eda97c8996fa2ccee.tar.gz
Avoid NPEs :-)
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/branches/broker-queue-refactor@661286 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java12
1 files changed, 6 insertions, 6 deletions
diff --git a/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java b/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java
index 5baf48245c..169da9275f 100644
--- a/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java
+++ b/java/broker/src/main/java/org/apache/qpid/server/queue/SimpleAMQQueue.java
@@ -514,7 +514,7 @@ public class SimpleAMQQueue implements AMQQueue, Subscription.StateListener
{
QueueEntry node = sub.getLastSeenEntry();
- while(node.isAcquired() || node.isDeleted() || !sub.hasInterest(node) )
+ while(node != null && (node.isAcquired() || node.isDeleted() || !sub.hasInterest(node)) )
{
QueueEntry newNode = _entries.next(node);
@@ -538,7 +538,7 @@ public class SimpleAMQQueue implements AMQQueue, Subscription.StateListener
else
{
node = sub.getLastSeenEntry();
- if(entry.compareTo(node) < 0 && sub.hasInterest(entry))
+ if(node != null && entry.compareTo(node) < 0 && sub.hasInterest(entry))
{
do
{
@@ -550,7 +550,7 @@ public class SimpleAMQQueue implements AMQQueue, Subscription.StateListener
{
node = sub.getLastSeenEntry();
}
- } while (entry.compareTo(node) < 0);
+ } while (node != null && entry.compareTo(node) < 0);
}
return false;
}
@@ -570,7 +570,7 @@ public class SimpleAMQQueue implements AMQQueue, Subscription.StateListener
if(!sub.isBrowser())
{
QueueEntry subEntry = sub.getLastSeenEntry();
- while(entry.compareTo(subEntry)<0)
+ while(subEntry != null && entry.compareTo(subEntry)<0)
{
if(sub.setLastSeenEntry(subEntry,entry))
{
@@ -1331,7 +1331,7 @@ public class SimpleAMQQueue implements AMQQueue, Subscription.StateListener
{
QueueEntry node = sub.getLastSeenEntry();
- while(node.isAcquired() || node.isDeleted() || node.expired())
+ while(node != null && (node.isAcquired() || node.isDeleted() || node.expired()))
{
if(!node.isAcquired() && !node.isDeleted() && node.expired())
{
@@ -1396,7 +1396,7 @@ public class SimpleAMQQueue implements AMQQueue, Subscription.StateListener
{
QueueEntry node = moveSubscriptionToNextNode(sub);
- if(sub.isActive())
+ if(node != null && sub.isActive())
{
boolean advanced = false;
boolean subActive = false;