Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 14f4a269 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Automerger Merge Worker
Browse files

Merge "MidiService: protect private service info" into sc-dev am: ca7c3b75

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/14341823

Change-Id: I619af66e8cecb913e29428ed3dccbae21334fd01
parents afc3d719 ca7c3b75
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -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)) {
                    if (device.isUidAllowed(uid)) {
                        return device.getDeviceInfo();
                    } else {
                        EventLog.writeEvent(0x534e4554, "185796676", -1, "");
                        return null;
                    }
                }
            }
            return null;