Check for DeviceAdminInfo type before casting
Race conditions seem to cause disabled list adapter items to trigger an onListItemClick event. Type of item object needs to be checked therefore. Bug:17187120 Change-Id: I469004081c89c9ba24dfa95872b54648a26213f9
This commit is contained in:
@@ -127,7 +127,12 @@ public class DeviceAdminSettings extends ListFragment {
|
||||
|
||||
@Override
|
||||
public void onListItemClick(ListView l, View v, int position, long id) {
|
||||
DeviceAdminInfo dpi = (DeviceAdminInfo) l.getAdapter().getItem(position);
|
||||
Object o = l.getAdapter().getItem(position);
|
||||
if (!(o instanceof DeviceAdminInfo)) {
|
||||
// race conditions may cause this
|
||||
return;
|
||||
}
|
||||
DeviceAdminInfo dpi = (DeviceAdminInfo) o;
|
||||
final Activity activity = getActivity();
|
||||
final int userId = getUserId(dpi);
|
||||
if (userId == UserHandle.myUserId() || !isProfileOwner(dpi)) {
|
||||
|
Reference in New Issue
Block a user