summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAlan Newberger <alann@google.com>2015-07-31 12:37:15 -0700
committerAlan Newberger <alann@google.com>2015-07-31 12:37:15 -0700
commitc8594ddf504109dc3c17baf9c2448469b28973e9 (patch)
tree47b3bc997e43a5dd60ae4945fee456709f5a87d7 /src
parent51a59c80a1e60f91e446b0b55282204501cf56a7 (diff)
downloadandroid_packages_apps_Camera2-c8594ddf504109dc3c17baf9c2448469b28973e9.tar.gz
android_packages_apps_Camera2-c8594ddf504109dc3c17baf9c2448469b28973e9.tar.bz2
android_packages_apps_Camera2-c8594ddf504109dc3c17baf9c2448469b28973e9.zip
Check for zero length array returns
permissions API may return zero length arrays, check before access. Bug: 22871531 Change-Id: I0ebd5feecb24f03fda0350a9ab42efa25127b3dc
Diffstat (limited to 'src')
-rw-r--r--src/com/android/camera/PermissionsActivity.java12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/com/android/camera/PermissionsActivity.java b/src/com/android/camera/PermissionsActivity.java
index a3981ef0f..3fda04abb 100644
--- a/src/com/android/camera/PermissionsActivity.java
+++ b/src/com/android/camera/PermissionsActivity.java
@@ -179,21 +179,24 @@ public class PermissionsActivity extends QuickActivity {
true);
if (mShouldRequestCameraPermission) {
- if (grantResults[mIndexPermissionRequestCamera] == PackageManager.PERMISSION_GRANTED) {
+ if (grantResults.length > 0 && grantResults[mIndexPermissionRequestCamera] ==
+ PackageManager.PERMISSION_GRANTED) {
mFlagHasCameraPermission = true;
} else {
handlePermissionsFailure();
}
}
if (mShouldRequestMicrophonePermission) {
- if (grantResults[mIndexPermissionRequestMicrophone] == PackageManager.PERMISSION_GRANTED) {
+ if (grantResults.length > 0 && grantResults[mIndexPermissionRequestMicrophone] ==
+ PackageManager.PERMISSION_GRANTED) {
mFlagHasMicrophonePermission = true;
} else {
handlePermissionsFailure();
}
}
if (mShouldRequestStoragePermission) {
- if (grantResults[mIndexPermissionRequestStorage] == PackageManager.PERMISSION_GRANTED) {
+ if (grantResults.length > 0 && grantResults[mIndexPermissionRequestStorage] ==
+ PackageManager.PERMISSION_GRANTED) {
mFlagHasStoragePermission = true;
} else {
handlePermissionsFailure();
@@ -201,7 +204,8 @@ public class PermissionsActivity extends QuickActivity {
}
if (mShouldRequestLocationPermission) {
- if (grantResults[mIndexPermissionRequestLocation] == PackageManager.PERMISSION_GRANTED) {
+ if (grantResults.length > 0 && grantResults[mIndexPermissionRequestLocation] ==
+ PackageManager.PERMISSION_GRANTED) {
// Do nothing
} else {
// Do nothing