CameraService: fix waitUntilIdle bug revealed by TestingCamera2.

* clear mStreamingRequestList in flush
* fix frame number checker in notify and processCaptureResult

Bug: 14166437
Change-Id: I022421080d05138f9068c1b9b85d83bd613b04fb
diff --git a/services/camera/libcameraservice/device3/Camera3Device.cpp b/services/camera/libcameraservice/device3/Camera3Device.cpp
index f965136..25e97f3 100644
--- a/services/camera/libcameraservice/device3/Camera3Device.cpp
+++ b/services/camera/libcameraservice/device3/Camera3Device.cpp
@@ -1749,13 +1749,14 @@
 
         gotResult = true;
 
-        if (frameNumber != mNextResultFrameNumber) {
+        // TODO: need to track errors for tighter bounds on expected frame number
+        if (frameNumber < mNextResultFrameNumber) {
             SET_ERR("Out-of-order capture result metadata submitted! "
                     "(got frame number %d, expecting %d)",
                     frameNumber, mNextResultFrameNumber);
             return;
         }
-        mNextResultFrameNumber++;
+        mNextResultFrameNumber = frameNumber + 1;
 
         CaptureResult captureResult;
         captureResult.mResultExtras = resultExtras;
@@ -1889,13 +1890,14 @@
             // Verify ordering of shutter notifications
             {
                 Mutex::Autolock l(mOutputLock);
-                if (frameNumber != mNextShutterFrameNumber) {
+                // TODO: need to track errors for tighter bounds on expected frame number.
+                if (frameNumber < mNextShutterFrameNumber) {
                     SET_ERR("Shutter notification out-of-order. Expected "
                             "notification for frame %d, got frame %d",
                             mNextShutterFrameNumber, frameNumber);
                     break;
                 }
-                mNextShutterFrameNumber++;
+                mNextShutterFrameNumber = frameNumber + 1;
             }
 
             CaptureResultExtras resultExtras;