- Fix a bug of segment stitching when there are more than one adjacencySid in label stack

Change-Id: Ie14156a7bdecc47caf012c866093c0c938bbc424
diff --git a/src/main/java/net/onrc/onos/apps/segmentrouting/SegmentRoutingManager.java b/src/main/java/net/onrc/onos/apps/segmentrouting/SegmentRoutingManager.java
index 7def639..2d90495 100644
--- a/src/main/java/net/onrc/onos/apps/segmentrouting/SegmentRoutingManager.java
+++ b/src/main/java/net/onrc/onos/apps/segmentrouting/SegmentRoutingManager.java
@@ -726,8 +726,8 @@
 
         // Output action
         if (srcMac != null && dstMac != null) {
-            ModifyDstMacAction setDstAction = new ModifyDstMacAction(MACAddress.valueOf(srcMac));
-            ModifySrcMacAction setSrcAction = new ModifySrcMacAction(MACAddress.valueOf(dstMac));
+            ModifyDstMacAction setDstAction = new ModifyDstMacAction(MACAddress.valueOf(dstMac));
+            ModifySrcMacAction setSrcAction = new ModifySrcMacAction(MACAddress.valueOf(srcMac));
             OutputAction outportAction = new OutputAction(PortNumber.uint32(num));
 
             actions.add(setDstAction);
@@ -1449,6 +1449,7 @@
                 if (prevAdjacencySid != null) {
                     if (isAdjacencySidNeighborOf(prevNodeId, prevAdjacencySid, nodeId)) {
                         prevAdjacencySid = null;
+                        prevNodeId = nodeId;
                         continue;
                     }
                     prevAdjacencySid = null;