From 8b0db0401e1a1c2582180edb39efb25e28521afa Mon Sep 17 00:00:00 2001 From: Jeff Sharkey Date: Thu, 7 Jan 2016 09:47:20 -0700 Subject: [PATCH] GmsCore is casting to a concrete subclass, sigh. Since this technically wasn't an API change, there isn't a good reason to protect with target API. So change the behavior based on the caller for now. Bug: 26438049 Change-Id: I65aa1fc9af1f935544f8e191444440af4f98f26f --- core/java/android/content/ContentProviderClient.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/core/java/android/content/ContentProviderClient.java b/core/java/android/content/ContentProviderClient.java index dec0d9107d3a5..16b5a4bc0404a 100644 --- a/core/java/android/content/ContentProviderClient.java +++ b/core/java/android/content/ContentProviderClient.java @@ -144,7 +144,12 @@ public class ContentProviderClient implements AutoCloseable { } final Cursor cursor = mContentProvider.query(mPackageName, url, projection, selection, selectionArgs, sortOrder, remoteCancellationSignal); - return new CursorWrapperInner(cursor); + if ("com.google.android.gms".equals(mPackageName)) { + // They're casting to a concrete subclass, sigh + return cursor; + } else { + return new CursorWrapperInner(cursor); + } } catch (DeadObjectException e) { if (!mStable) { mContentResolver.unstableProviderDied(mContentProvider);