From 24492ae448c5335b42a14aaf2a9ef9882da3da04 Mon Sep 17 00:00:00 2001 From: Jeff Sharkey Date: Mon, 25 Apr 2016 13:20:25 -0600 Subject: [PATCH] Track down Contexts without data directories. Data directories for all packages should be created and managed by installd; if we create a Context and the data directory doesn't exist yet, we're in trouble, since a later mkdirs() would end up creating the directory with incorrect permissions, mode, and SELinux labels. Bug: 28272737 Change-Id: Ie3bb884ab07748719378de5c792046a031a3f945 --- core/java/android/app/ContextImpl.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/core/java/android/app/ContextImpl.java b/core/java/android/app/ContextImpl.java index 6bb853afd90d6..f2e59975e5f11 100644 --- a/core/java/android/app/ContextImpl.java +++ b/core/java/android/app/ContextImpl.java @@ -1958,6 +1958,10 @@ class ContextImpl extends Context { } if (res != null) { + if (!res.exists()) { + Log.wtf(TAG, "Data directory doesn't exist for package " + getPackageName(), + new Throwable()); + } return res; } else { throw new RuntimeException(