fix sending EOS after Surface is released.

- EOS can fail as there is no backing buffer

bug: 11070246
Change-Id: I751bba776250c9445016b9ac009134f9079e37ac
diff --git a/tests/tests/media/src/android/media/cts/EncodeVirtualDisplayWithCompositionTest.java b/tests/tests/media/src/android/media/cts/EncodeVirtualDisplayWithCompositionTest.java
index 197b437..79afc12 100644
--- a/tests/tests/media/src/android/media/cts/EncodeVirtualDisplayWithCompositionTest.java
+++ b/tests/tests/media/src/android/media/cts/EncodeVirtualDisplayWithCompositionTest.java
@@ -230,12 +230,7 @@
             try {
                 ByteBuffer[] encoderOutputBuffers = mEncoder.getOutputBuffers();
                 MediaCodec.BufferInfo info = new MediaCodec.BufferInfo();
-                boolean stopEncoding = false;
-                while (!stopEncoding) {
-                    if (mStopEncoding) {
-                        mEncoder.signalEndOfInputStream();
-                        mStopEncoding = false; // reset to prevent sending EOS again
-                    }
+                while (!mStopEncoding) {
                     int index = mEncoder.dequeueOutputBuffer(info, TIMEOUT_USEC_NORMAL);
                     if (index >= 0) {
                         if ((info.flags & MediaCodec.BUFFER_FLAG_CODEC_CONFIG) != 0) {
@@ -246,7 +241,7 @@
                             mEventListener.onCodecConfig(encodedData, info);
                             mEncoder.releaseOutputBuffer(index, false);
                         } else if ((info.flags & MediaCodec.BUFFER_FLAG_END_OF_STREAM) != 0) {
-                            stopEncoding = true;
+                            break;
                         } else {
                             ByteBuffer encodedData = encoderOutputBuffers[index];
                             encodedData.position(info.offset);