OSDN Git Service

Verify that AudioRecord object is initialized for more APIs
authorGlenn Kasten <gkasten@google.com>
Fri, 19 Jul 2013 00:16:16 +0000 (17:16 -0700)
committerGlenn Kasten <gkasten@google.com>
Mon, 22 Jul 2013 14:40:41 +0000 (07:40 -0700)
Compare to AudioTrack, which already has these checks.

Change-Id: I3a239dfb4b918ceabfb723f189cc50ed6662eee6

media/java/android/media/AudioRecord.java

index 4f69cf0..78306ac 100644 (file)
@@ -694,6 +694,9 @@ public class AudioRecord
      *  {@link #ERROR_INVALID_OPERATION}
      */
     public int setNotificationMarkerPosition(int markerInFrames) {
+        if (mState == STATE_UNINITIALIZED) {
+            return ERROR_INVALID_OPERATION;
+        }
         return native_set_marker_pos(markerInFrames);
     }
 
@@ -706,6 +709,9 @@ public class AudioRecord
      * @return error code or success, see {@link #SUCCESS}, {@link #ERROR_INVALID_OPERATION}
      */
     public int setPositionNotificationPeriod(int periodInFrames) {
+        if (mState == STATE_UNINITIALIZED) {
+            return ERROR_INVALID_OPERATION;
+        }
         return native_set_pos_update_period(periodInFrames);
     }