diff --git a/src/com/android/camera/CaptureModule.java b/src/com/android/camera/CaptureModule.java
index ad9ece77d77e9dd201a304c5ce94ea69fa7348a7..ff26cda0624504ce8baf15cc3dd8cc64e5c90073 100755
--- a/src/com/android/camera/CaptureModule.java
+++ b/src/com/android/camera/CaptureModule.java
@@ -4605,7 +4605,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);
@@ -4629,7 +4629,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 525709e335d1f21f1a50fbe20f799dc2c6f8c603..fa34b573495888af2e05f29eabd9f1f2554de702 100755
--- a/src/com/android/camera/SettingsManager.java
+++ b/src/com/android/camera/SettingsManager.java
@@ -1380,13 +1380,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) {