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

Commit 5839e780 authored by Hall Liu's avatar Hall Liu Committed by Android (Google) Code Review
Browse files

Merge "Initialize MD5 in logging in background" into cw-e-dev

parents e2c27eed 468bb1a5
Loading
Loading
Loading
Loading
+27 −8
Original line number Diff line number Diff line
@@ -16,6 +16,8 @@

package android.telecom;

import android.os.AsyncTask;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.IllegalFormatException;
@@ -38,8 +40,26 @@ final public class Log {
    public static final boolean WARN = isLoggable(android.util.Log.WARN);
    public static final boolean ERROR = isLoggable(android.util.Log.ERROR);

    private static MessageDigest sMessageDigest;

    private Log() {}

    public static void initMd5Sum() {
        new AsyncTask<Void, Void, Void>() {
            @Override
            public Void doInBackground(Void... args) {
                MessageDigest md;
                try {
                    md = MessageDigest.getInstance("SHA-1");
                } catch (NoSuchAlgorithmException e) {
                    md = null;
                }
                sMessageDigest = md;
                return null;
            }
        }.execute();
    }

    public static boolean isLoggable(int level) {
        return FORCE_LOGGING || android.util.Log.isLoggable(TAG, level);
    }
@@ -137,15 +157,14 @@ final public class Log {
    }

    private static String secureHash(byte[] input) {
        MessageDigest messageDigest;
        try {
            messageDigest = MessageDigest.getInstance("SHA-1");
        } catch (NoSuchAlgorithmException e) {
            return null;
        }
        messageDigest.update(input);
        byte[] result = messageDigest.digest();
        if (sMessageDigest != null) {
            sMessageDigest.reset();
            sMessageDigest.update(input);
            byte[] result = sMessageDigest.digest();
            return encodeHex(result);
        } else {
            return "Uninitialized SHA1";
        }
    }

    private static String encodeHex(byte[] bytes) {
+1 −0
Original line number Diff line number Diff line
@@ -463,6 +463,7 @@ public class TelecomManager {
        } else {
            mContext = context;
        }
        android.telecom.Log.initMd5Sum();
    }

    /**