Prevent crash if grantResults array is empty

This commit is contained in:
Sylvain Berfini 2021-07-12 11:17:43 +02:00
parent 345941781b
commit c9dc049cfc
10 changed files with 12 additions and 12 deletions

View file

@ -40,7 +40,7 @@ abstract class AbstractPhoneFragment<T : ViewDataBinding> : GenericFragment<T>()
grantResults: IntArray
) {
if (requestCode == 0) {
if (grantResults[0] == PackageManager.PERMISSION_GRANTED) {
if (grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
Log.i("[Assistant] READ_PHONE_NUMBERS permission granted")
updateFromDeviceInfo()
} else {

View file

@ -62,7 +62,7 @@ class EchoCancellerCalibrationFragment : GenericFragment<AssistantEchoCancellerC
permissions: Array<out String>,
grantResults: IntArray
) {
val granted = grantResults[0] == PackageManager.PERMISSION_GRANTED
val granted = grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED
if (granted) {
Log.i("[Echo Canceller Calibration] RECORD_AUDIO permission granted")
viewModel.startEchoCancellerCalibration()

View file

@ -86,7 +86,7 @@ class QrCodeFragment : GenericFragment<AssistantQrCodeFragmentBinding>() {
permissions: Array<out String>,
grantResults: IntArray
) {
val granted = grantResults[0] == PackageManager.PERMISSION_GRANTED
val granted = grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED
if (granted) {
Log.i("[QR Code] CAMERA permission granted")
coreContext.core.reloadVideoDevices()

View file

@ -205,7 +205,7 @@ class ControlsFragment : GenericFragment<CallControlsFragmentBinding>() {
}
}
}
} else if (requestCode == 1 && grantResults[0] == PERMISSION_GRANTED) {
} else if (requestCode == 1 && grantResults.isNotEmpty() && grantResults[0] == PERMISSION_GRANTED) {
callsViewModel.takeScreenshot()
}
super.onRequestPermissionsResult(requestCode, permissions, grantResults)

View file

@ -159,7 +159,7 @@ class ChatRoomCreationFragment : SecureFragment<ChatRoomCreationFragmentBinding>
grantResults: IntArray
) {
if (requestCode == 0) {
val granted = grantResults[0] == PackageManager.PERMISSION_GRANTED
val granted = grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED
if (granted) {
Log.i("[Chat Room Creation] READ_CONTACTS permission granted")
LinphoneApplication.coreContext.contactsManager.onReadContactsPermissionGranted()

View file

@ -120,7 +120,7 @@ class ContactEditorFragment : GenericFragment<ContactEditorFragmentBinding>(), S
grantResults: IntArray
) {
if (requestCode == 0) {
val granted = grantResults[0] == PackageManager.PERMISSION_GRANTED
val granted = grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED
if (granted) {
Log.i("[Contact Editor] WRITE_CONTACTS permission granted")
} else {

View file

@ -271,7 +271,7 @@ class MasterContactsFragment : MasterFragment<ContactMasterFragmentBinding, Cont
grantResults: IntArray
) {
if (requestCode == 0) {
val granted = grantResults[0] == PackageManager.PERMISSION_GRANTED
val granted = grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED
if (granted) {
Log.i("[Contacts] READ_CONTACTS permission granted")
coreContext.contactsManager.onReadContactsPermissionGranted()
@ -280,7 +280,7 @@ class MasterContactsFragment : MasterFragment<ContactMasterFragmentBinding, Cont
Log.w("[Contacts] READ_CONTACTS permission denied")
}
} else if (requestCode == 1) {
val granted = grantResults[0] == PackageManager.PERMISSION_GRANTED
val granted = grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED
if (granted) {
Log.i("[Contacts] WRITE_CONTACTS permission granted")
listSelectionViewModel.isEditionEnabled.value = true

View file

@ -86,7 +86,7 @@ class AudioSettingsFragment : GenericFragment<SettingsAudioFragmentBinding>() {
permissions: Array<out String>,
grantResults: IntArray
) {
val granted = grantResults[0] == PackageManager.PERMISSION_GRANTED
val granted = grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED
if (granted) {
Log.i("[Audio Settings] RECORD_AUDIO permission granted")
if (requestCode == 1) {

View file

@ -89,7 +89,7 @@ class ContactsSettingsFragment : GenericFragment<SettingsContactsFragmentBinding
) {
when (requestCode) {
0 -> {
val granted = grantResults[0] == PackageManager.PERMISSION_GRANTED
val granted = grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED
if (granted) {
Log.i("[Contacts Settings] READ_CONTACTS permission granted")
viewModel.readContactsPermissionGranted.value = true
@ -100,7 +100,7 @@ class ContactsSettingsFragment : GenericFragment<SettingsContactsFragmentBinding
}
}
1 -> {
val granted = grantResults[0] == PackageManager.PERMISSION_GRANTED
val granted = grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED
if (granted) {
Log.i("[Contacts Settings] WRITE_CONTACTS permission granted")
corePreferences.storePresenceInNativeContact = true

View file

@ -72,7 +72,7 @@ class VideoSettingsFragment : GenericFragment<SettingsVideoFragmentBinding>() {
permissions: Array<out String>,
grantResults: IntArray
) {
val granted = grantResults[0] == PackageManager.PERMISSION_GRANTED
val granted = grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED
if (granted) {
Log.i("[Video Settings] CAMERA permission granted")
coreContext.core.reloadVideoDevices()