OSDN Git Service

Tighten enforcement of file modes.
authorJeff Sharkey <jsharkey@android.com>
Thu, 28 Feb 2013 23:57:36 +0000 (15:57 -0800)
committerGeremy Condra <gcondra@google.com>
Sat, 2 Mar 2013 00:17:09 +0000 (16:17 -0800)
Bug: 8275867
Change-Id: I4da14f2dd0049aca69636999696c1f3c02b3b792

core/java/android/content/ContentProvider.java

index b22179e..42618ac 100644 (file)
@@ -238,7 +238,7 @@ public abstract class ContentProvider implements ComponentCallbacks2 {
         @Override
         public ParcelFileDescriptor openFile(Uri uri, String mode)
                 throws FileNotFoundException {
-            if (mode != null && mode.startsWith("rw")) enforceWritePermission(uri);
+            if (mode != null && mode.indexOf('w') != -1) enforceWritePermission(uri);
             else enforceReadPermission(uri);
             return ContentProvider.this.openFile(uri, mode);
         }
@@ -246,7 +246,7 @@ public abstract class ContentProvider implements ComponentCallbacks2 {
         @Override
         public AssetFileDescriptor openAssetFile(Uri uri, String mode)
                 throws FileNotFoundException {
-            if (mode != null && mode.startsWith("rw")) enforceWritePermission(uri);
+            if (mode != null && mode.indexOf('w') != -1) enforceWritePermission(uri);
             else enforceReadPermission(uri);
             return ContentProvider.this.openAssetFile(uri, mode);
         }