diff --git a/src/com/android/camera/CaptureModule.java b/src/com/android/camera/CaptureModule.java index f8e1b8d9a2f33f47701752de96cb30553404e115..7bfee30417485261fcc1cbcbb6eab3e23a5c9348 100755 --- a/src/com/android/camera/CaptureModule.java +++ b/src/com/android/camera/CaptureModule.java @@ -4631,7 +4631,7 @@ public class CaptureModule implements CameraModule, PhotoController, } } else { // is pause or stopRecord - if (!(mMediaRecorderPausing && mStopRecPending)) { + if (!(mMediaRecorderPausing && mStopRecPending) && (mCurrentSession != null)) { mCurrentSession.stopRepeating(); try { mVideoRequestBuilder.set(CaptureModule.recording_end_stream, (byte) 0x01); @@ -4655,7 +4655,7 @@ public class CaptureModule implements CameraModule, PhotoController, } // set preview - if (captureRequestBuilder != null) { + if (captureRequestBuilder != null && (mCurrentSession != null)) { if (mCurrentSession instanceof CameraConstrainedHighSpeedCaptureSession) { List requestList = CameraUtil.createHighSpeedRequestList(captureRequestBuilder.build()); mCurrentSession.setRepeatingBurst(requestList, diff --git a/src/com/android/camera/SettingsManager.java b/src/com/android/camera/SettingsManager.java index bdb7bcc2e9a0b310fb70eee674835630b63f0e9e..7640cb53b5d9dd2fc6c1ffb9ab2b02b0b1b4f402 100755 --- a/src/com/android/camera/SettingsManager.java +++ b/src/com/android/camera/SettingsManager.java @@ -1381,13 +1381,17 @@ public class SettingsManager implements ListMenu.SettingsListener { } private List<String> getSupportedWhiteBalanceModes(int cameraId) { - int[] whiteBalanceModes = mCharacteristics.get(cameraId).get(CameraCharacteristics - .CONTROL_AWB_AVAILABLE_MODES); - List<String> modes = new ArrayList<>(); - for (int mode : whiteBalanceModes) { - modes.add("" + mode); + try { + int[] whiteBalanceModes = mCharacteristics.get(cameraId).get(CameraCharacteristics + .CONTROL_AWB_AVAILABLE_MODES); + List<String> modes = new ArrayList<>(); + for (int mode : whiteBalanceModes) { + modes.add("" + mode); + } + return modes; + } catch (IndexOutOfBoundsException e) { + return null; } - return modes; } private List<String> getSupportedSceneModes(int cameraId) {