Fixed double-extraction issue in spgw parser

Change-Id: I9b564322840147ab037cc07ddc1384e648b946b8
diff --git a/pipelines/fabric/src/main/resources/fabric.p4 b/pipelines/fabric/src/main/resources/fabric.p4
index 89ce975..56ab6e9 100644
--- a/pipelines/fabric/src/main/resources/fabric.p4
+++ b/pipelines/fabric/src/main/resources/fabric.p4
@@ -44,10 +44,12 @@
     apply {
         packet_io_ingress.apply(hdr, fabric_metadata, standard_metadata);
 #ifdef WITH_SPGW
+#ifdef WITH_SPGW_PCC_GATING
         fabric_metadata.spgw.l4_src_port = fabric_metadata.l4_src_port;
         fabric_metadata.spgw.l4_dst_port = fabric_metadata.l4_dst_port;
+#endif // WITH_SPGW_PCC_GATING
         spgw_ingress.apply(hdr.gtpu_ipv4, hdr.gtpu_udp, hdr.gtpu,
-                           fabric_metadata.spgw, hdr.ipv4);
+                           hdr.ipv4, hdr.udp, fabric_metadata.spgw);
 #endif // WITH_SPGW
         filtering.apply(hdr, fabric_metadata, standard_metadata);
         forwarding.apply(hdr, fabric_metadata, standard_metadata);