InstallationFuture: latch after setting error info

Change-Id: Ib7d1f01228a792707a865f71f19c0d3fa96dc1f0
diff --git a/providers/openflow/flow/src/main/java/org/onlab/onos/provider/of/flow/impl/OpenFlowRuleProvider.java b/providers/openflow/flow/src/main/java/org/onlab/onos/provider/of/flow/impl/OpenFlowRuleProvider.java
index 348b294..9f26230 100644
--- a/providers/openflow/flow/src/main/java/org/onlab/onos/provider/of/flow/impl/OpenFlowRuleProvider.java
+++ b/providers/openflow/flow/src/main/java/org/onlab/onos/provider/of/flow/impl/OpenFlowRuleProvider.java
@@ -396,7 +396,6 @@
         public void fail(OFErrorMsg msg, Dpid dpid) {
 
             ok.set(false);
-            removeRequirement(dpid);
             FlowEntry fe = null;
             FlowRuleBatchEntry fbe = fms.get(msg.getXid());
             failedId = fbe.id();
@@ -446,6 +445,7 @@
             }
             offendingFlowMods.add(fe);
 
+            removeRequirement(dpid);
         }