This is the fix for a reactive forwarding bug, which does not work well between devices on the same switch.

Change-Id: I83a19cb559ddcdfac244dc95649572df12404a71
diff --git a/src/main/java/net/onrc/onos/apps/forwarding/Forwarding.java b/src/main/java/net/onrc/onos/apps/forwarding/Forwarding.java
index 08a68b6..d8c01ce 100644
--- a/src/main/java/net/onrc/onos/apps/forwarding/Forwarding.java
+++ b/src/main/java/net/onrc/onos/apps/forwarding/Forwarding.java
@@ -496,8 +496,14 @@
         List<PacketToPush> packets = null;
         net.onrc.onos.core.topology.Path graphPath = installedPath.getPath();
 
-        log.debug("path{}", graphPath);
-        Short outPort = graphPath.get(0).getSrc().getNumber().shortValue();
+        short outPort;
+        if (graphPath.isEmpty()) {
+            outPort = (short) spfIntent.getDstPortNumber();
+            log.debug("Path is empty. Maybe devices on the same switch. outPort {}", outPort);
+        } else {
+            outPort = graphPath.get(0).getSrc().getNumber().shortValue();
+            log.debug("path{}, outPort {}", graphPath, outPort);
+        }
 
         PushedFlow existingFlow = null;