Camera: fix DeviceReortLog.addValues issue

DeviceReportLog#addValues stores input array reference instead of
making a copy, so don't use an array in addValues twice.

Bug: 26967105
Change-Id: I040b1c2bb6e0b168fbff23c84c1c0ad17f41be9e
diff --git a/tests/camera/src/android/hardware/camera2/cts/PerformanceTest.java b/tests/camera/src/android/hardware/camera2/cts/PerformanceTest.java
index f0f8f66..3f8e7db 100644
--- a/tests/camera/src/android/hardware/camera2/cts/PerformanceTest.java
+++ b/tests/camera/src/android/hardware/camera2/cts/PerformanceTest.java
@@ -114,16 +114,18 @@
      * </p>
      */
     public void testCameraLaunch() throws Exception {
-        double[] cameraOpenTimes = new double[NUM_TEST_LOOPS];
-        double[] configureStreamTimes = new double[NUM_TEST_LOOPS];
-        double[] startPreviewTimes = new double[NUM_TEST_LOOPS];
-        double[] stopPreviewTimes = new double[NUM_TEST_LOOPS];
-        double[] cameraCloseTimes = new double[NUM_TEST_LOOPS];
-        double[] cameraLaunchTimes = new double[NUM_TEST_LOOPS];
         double[] avgCameraLaunchTimes = new double[mCameraIds.length];
 
         int counter = 0;
         for (String id : mCameraIds) {
+            // Do NOT move these variables to outer scope
+            // They will be passed to DeviceReportLog and their references will be stored
+            double[] cameraOpenTimes = new double[NUM_TEST_LOOPS];
+            double[] configureStreamTimes = new double[NUM_TEST_LOOPS];
+            double[] startPreviewTimes = new double[NUM_TEST_LOOPS];
+            double[] stopPreviewTimes = new double[NUM_TEST_LOOPS];
+            double[] cameraCloseTimes = new double[NUM_TEST_LOOPS];
+            double[] cameraLaunchTimes = new double[NUM_TEST_LOOPS];
             try {
                 mStaticInfo = new StaticMetadata(mCameraManager.getCameraCharacteristics(id));
                 if (mStaticInfo.isColorOutputSupported()) {
@@ -224,13 +226,15 @@
      * </p>
      */
     public void testSingleCapture() throws Exception {
-        double[] captureTimes = new double[NUM_TEST_LOOPS];
-        double[] getPartialTimes = new double[NUM_TEST_LOOPS];
-        double[] getResultTimes = new double[NUM_TEST_LOOPS];
         double[] avgResultTimes = new double[mCameraIds.length];
 
         int counter = 0;
         for (String id : mCameraIds) {
+            // Do NOT move these variables to outer scope
+            // They will be passed to DeviceReportLog and their references will be stored
+            double[] captureTimes = new double[NUM_TEST_LOOPS];
+            double[] getPartialTimes = new double[NUM_TEST_LOOPS];
+            double[] getResultTimes = new double[NUM_TEST_LOOPS];
             try {
                 openDevice(id);