L509: 解决gpio测试返回结果出现错误数据

Change-Id: I3240625eea45d7a73a67a06fcab6d0d4c36cd905
diff --git a/mbtk/libmbtk_factory/mbtk_gpio.c b/mbtk/libmbtk_factory/mbtk_gpio.c
index 80cff21..29e9cd6 100755
--- a/mbtk/libmbtk_factory/mbtk_gpio.c
+++ b/mbtk/libmbtk_factory/mbtk_gpio.c
@@ -979,7 +979,7 @@
 
 int mbtk_at_gpio(void* arg)
 {
-    int i;
+    int i, num;
     int *fail_io = (int *)arg;
      /*OPEN SWITCH */
     uint16 test_fail_count = 0;
@@ -1029,7 +1029,7 @@
          sprintf(buf, "GPIOTEST Fail %02d PINs:", test_fail_count*2);
          temp_len = strlen(buf);
 
-
+            num = 0;
            for(i = 0; i< test_MAX_pin_num; i++)
            {
 
@@ -1038,11 +1038,10 @@
 
                      Out_pin = test_pin_array[i].output_pin;
                      in_pin = test_pin_array[i].input_pin;
-                     fail_io[i] = Out_pin;
-                     fail_io[i+1] = in_pin;
+                     fail_io[num++] = Out_pin;
+                     fail_io[num++] = in_pin;
 
                 }
-
            }
        }
 
@@ -1051,7 +1050,7 @@
 		printf(buf,"ALL GPIO TEST PASS\r\n");
 	 }
 	 //temp_len = strlen(buf);
-	return  test_fail_count;
+	return  test_fail_count * 2;
 }
 
 #elif defined(MBTK_PROJECT_L508_X6)