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

Commit 750be2cf authored by Jiakai Zhang's avatar Jiakai Zhang Committed by Android (Google) Code Review
Browse files

Merge "Use `ParcelFileDescriptor` when calling ART commands."

parents 2547975f 1ad432e5
Loading
Loading
Loading
Loading
+8 −3
Original line number Original line Diff line number Diff line
@@ -3445,9 +3445,14 @@ class PackageManagerShellCommand extends ShellCommand {
        // Remove the first arg "art" and forward to ART module.
        // Remove the first arg "art" and forward to ART module.
        String[] args = getAllArgs();
        String[] args = getAllArgs();
        args = Arrays.copyOfRange(args, 1, args.length);
        args = Arrays.copyOfRange(args, 1, args.length);
        try (var in = ParcelFileDescriptor.dup(getInFileDescriptor());
                var out = ParcelFileDescriptor.dup(getOutFileDescriptor());
                var err = ParcelFileDescriptor.dup(getErrFileDescriptor())) {
            return LocalManagerRegistry.getManagerOrThrow(ArtManagerLocal.class)
            return LocalManagerRegistry.getManagerOrThrow(ArtManagerLocal.class)
                .handleShellCommand(getTarget(), getInFileDescriptor(), getOutFileDescriptor(),
                    .handleShellCommand(getTarget(), in, out, err, args);
                        getErrFileDescriptor(), args);
        } catch (IOException e) {
            throw new IllegalStateException(e);
        }
    }
    }


    private static String checkAbiArgument(String abi) {
    private static String checkAbiArgument(String abi) {