Merge "MidiService: protect private service info" into sc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
ca7c3b754e
@@ -43,6 +43,7 @@ import android.os.IBinder;
|
||||
import android.os.Process;
|
||||
import android.os.RemoteException;
|
||||
import android.os.UserHandle;
|
||||
import android.util.EventLog;
|
||||
import android.util.Log;
|
||||
|
||||
import com.android.internal.content.PackageMonitor;
|
||||
@@ -736,13 +737,19 @@ public class MidiService extends IMidiManager.Stub {
|
||||
|
||||
@Override
|
||||
public MidiDeviceInfo getServiceDeviceInfo(String packageName, String className) {
|
||||
int uid = Binder.getCallingUid();
|
||||
synchronized (mDevicesByInfo) {
|
||||
for (Device device : mDevicesByInfo.values()) {
|
||||
ServiceInfo serviceInfo = device.getServiceInfo();
|
||||
if (serviceInfo != null &&
|
||||
packageName.equals(serviceInfo.packageName) &&
|
||||
className.equals(serviceInfo.name)) {
|
||||
return device.getDeviceInfo();
|
||||
if (device.isUidAllowed(uid)) {
|
||||
return device.getDeviceInfo();
|
||||
} else {
|
||||
EventLog.writeEvent(0x534e4554, "185796676", -1, "");
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
return null;
|
||||
|
||||
Reference in New Issue
Block a user