avoid other OF listeners overwriting the priority of another listener
diff --git a/core/api/src/main/java/org/onlab/onos/net/packet/DefaultPacketContext.java b/core/api/src/main/java/org/onlab/onos/net/packet/DefaultPacketContext.java
index 923f168..3c2b0ea 100644
--- a/core/api/src/main/java/org/onlab/onos/net/packet/DefaultPacketContext.java
+++ b/core/api/src/main/java/org/onlab/onos/net/packet/DefaultPacketContext.java
@@ -1,5 +1,7 @@
 package org.onlab.onos.net.packet;
 
+import java.util.concurrent.atomic.AtomicBoolean;
+
 import org.onlab.onos.net.flow.DefaultTrafficTreatment;
 import org.onlab.onos.net.flow.TrafficTreatment;
 import org.onlab.onos.net.flow.TrafficTreatment.Builder;
@@ -12,7 +14,7 @@
     private final OutboundPacket outPkt;
     private final TrafficTreatment.Builder builder;
 
-    private boolean block = false;
+    private final AtomicBoolean block;
 
 
     protected DefaultPacketContext(long time, InboundPacket inPkt,
@@ -21,7 +23,7 @@
         this.time = time;
         this.inPkt = inPkt;
         this.outPkt = outPkt;
-        this.block = block;
+        this.block = new AtomicBoolean(block);
         this.builder = new DefaultTrafficTreatment.Builder();
     }
 
@@ -49,13 +51,12 @@
     public abstract void send();
 
     @Override
-    public void block() {
-        this.block = true;
+    public boolean blocked() {
+        return this.block.getAndSet(true);
     }
 
     @Override
     public boolean isHandled() {
-        return this.block;
+        return this.block.get();
     }
-
 }