From 2942391801b79816c5eb77d7ac94c4a65f26af48 Mon Sep 17 00:00:00 2001 From: Kenny Root Date: Fri, 1 Oct 2010 08:37:20 -0700 Subject: Fix regression in OBB key handling Change-Id: If583cbdb8be68ffed094a5fde7ee00e1914c5841 --- services/java/com/android/server/MountService.java | 29 +++++++++++----------- 1 file changed, 14 insertions(+), 15 deletions(-) (limited to 'services/java') diff --git a/services/java/com/android/server/MountService.java b/services/java/com/android/server/MountService.java index d6ee075..84998c3 100644 --- a/services/java/com/android/server/MountService.java +++ b/services/java/com/android/server/MountService.java @@ -1599,20 +1599,23 @@ class MountService extends IMountService.Stub addObbState(obbState); } - final MessageDigest md; - try { - md = MessageDigest.getInstance("MD5"); - } catch (NoSuchAlgorithmException e) { - Slog.e(TAG, "Could not load MD5 algorithm", e); + String hashedKey = null; + if (key != null) { + final MessageDigest md; try { - token.onObbResult(filename, Environment.MEDIA_UNMOUNTED); - } catch (RemoteException e1) { - Slog.d(TAG, "Could not send unmount notification for: " + filename); + md = MessageDigest.getInstance("MD5"); + } catch (NoSuchAlgorithmException e) { + Slog.e(TAG, "Could not load MD5 algorithm", e); + try { + token.onObbResult(filename, Environment.MEDIA_UNMOUNTED); + } catch (RemoteException e1) { + Slog.d(TAG, "Could not send unmount notification for: " + filename); + } + return; } - return; - } - String hashedKey = HexDump.toHexString(md.digest(key.getBytes())); + hashedKey = HexDump.toHexString(md.digest(key.getBytes())); + } ObbAction action = new MountObbAction(obbState, hashedKey); mObbActionHandler.sendMessage(mObbActionHandler.obtainMessage(OBB_RUN_ACTION, action)); @@ -1956,10 +1959,6 @@ class MountService extends IMountService.Stub throw new IllegalArgumentException("Caller package does not match OBB file"); } - if (mKey == null) { - mKey = "none"; - } - boolean mounted = false; int rc; synchronized (mObbState) { -- cgit v1.1