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

Commit 91f0d2d2 authored by Soonil Nagarkar's avatar Soonil Nagarkar
Browse files

Remove cross process dump() call

This call has never worked in testing, and adds a significant penalty to
dumping LocationManagerService.

Bug: 125313528
Test: manually
Change-Id: Ia455578e2b941c5a0888abb79a13adc0bb55729a
parent 5ccf21b3
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -11,7 +11,7 @@ package com.android.location.provider {
    method public android.os.IBinder getBinder();
    method public boolean isEnabled();
    method @Deprecated protected void onDisable();
    method protected void onDump(java.io.FileDescriptor, java.io.PrintWriter, String[]);
    method @Deprecated protected void onDump(java.io.FileDescriptor, java.io.PrintWriter, String[]);
    method @Deprecated protected void onEnable();
    method @Deprecated protected int onGetStatus(android.os.Bundle);
    method @Deprecated protected long onGetStatusUpdateTime();
+3 −6
Original line number Diff line number Diff line
@@ -240,8 +240,10 @@ public abstract class LocationProviderBase {
    protected abstract void onSetRequest(ProviderRequestUnbundled request, WorkSource source);

    /**
     * Dump debug information.
     * @deprecated This callback will never be invoked on Android Q and above. This method may be
     * removed in the future. Prefer to dump provider state via the containing service instead.
     */
    @Deprecated
    protected void onDump(FileDescriptor fd, PrintWriter pw, String[] args) {}

    /**
@@ -336,10 +338,5 @@ public abstract class LocationProviderBase {
        public void sendExtraCommand(String command, Bundle extras) {
            onSendExtraCommand(command, extras);
        }

        @Override
        public void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
            onDump(fd, pw, args);
        }
    }
}
+0 −10
Original line number Diff line number Diff line
@@ -34,13 +34,11 @@ import com.android.internal.location.ILocationProvider;
import com.android.internal.location.ILocationProviderManager;
import com.android.internal.location.ProviderProperties;
import com.android.internal.location.ProviderRequest;
import com.android.internal.os.TransferPipe;
import com.android.server.FgThread;
import com.android.server.LocationManagerService;
import com.android.server.ServiceWatcher;

import java.io.FileDescriptor;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.Collections;
@@ -189,14 +187,6 @@ public class LocationProviderProxy extends AbstractLocationProvider {
                pw.println("  additional packages=" + mProviderPackages);
            }
        }
        mServiceWatcher.runOnBinderBlocking(binder -> {
            try {
                TransferPipe.dumpAsync(binder, fd, args);
            } catch (IOException | RemoteException e) {
                pw.println("  <failed to dump location provider: " + e + ">");
            }
            return null;
        }, null);
    }

    @Override