Merge "Avoid null app context in StaticApplicationContextServiceFetcher." into nyc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
7d4ed2f5ab
@@ -882,7 +882,12 @@ final class SystemServiceRegistry {
|
|||||||
public final T getService(ContextImpl ctx) {
|
public final T getService(ContextImpl ctx) {
|
||||||
synchronized (StaticApplicationContextServiceFetcher.this) {
|
synchronized (StaticApplicationContextServiceFetcher.this) {
|
||||||
if (mCachedInstance == null) {
|
if (mCachedInstance == null) {
|
||||||
mCachedInstance = createService(ctx.getApplicationContext());
|
Context appContext = ctx.getApplicationContext();
|
||||||
|
// If the application context is null, we're either in the system process or
|
||||||
|
// it's the application context very early in app initialization. In both these
|
||||||
|
// cases, the passed-in ContextImpl will not be freed, so it's safe to pass it
|
||||||
|
// to the service. http://b/27532714 .
|
||||||
|
mCachedInstance = createService(appContext != null ? appContext : ctx);
|
||||||
}
|
}
|
||||||
return mCachedInstance;
|
return mCachedInstance;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user