diff options
author | paulmiller <paulmiller@chromium.org> | 2015-10-21 16:57:14 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-10-21 23:58:32 +0000 |
commit | cea5e305479b2257a59bc9f0cbfc23d0f58f44ce (patch) | |
tree | e74648e85f67273e2bf099956083ac908fdb96ef /android_webview/tools | |
parent | 7ada1fdfb59342d3e3d17b25b1accbfe11e1c3d6 (diff) | |
download | chromium_src-cea5e305479b2257a59bc9f0cbfc23d0f58f44ce.zip chromium_src-cea5e305479b2257a59bc9f0cbfc23d0f58f44ce.tar.gz chromium_src-cea5e305479b2257a59bc9f0cbfc23d0f58f44ce.tar.bz2 |
WebViewShell crashes on Android <= L. Fix that.
caused by 6a9ad501c3588013cb435b64f6d3525a061a8f09
BUG=546122
Review URL: https://codereview.chromium.org/1420833002
Cr-Commit-Position: refs/heads/master@{#355442}
Diffstat (limited to 'android_webview/tools')
-rw-r--r-- | android_webview/tools/WebViewShell/src/org/chromium/webview_shell/WebViewBrowserActivity.java | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/android_webview/tools/WebViewShell/src/org/chromium/webview_shell/WebViewBrowserActivity.java b/android_webview/tools/WebViewShell/src/org/chromium/webview_shell/WebViewBrowserActivity.java index 5deccce..9b433d8 100644 --- a/android_webview/tools/WebViewShell/src/org/chromium/webview_shell/WebViewBrowserActivity.java +++ b/android_webview/tools/WebViewShell/src/org/chromium/webview_shell/WebViewBrowserActivity.java @@ -238,6 +238,11 @@ public class WebViewBrowserActivity extends Activity implements PopupMenu.OnMenu } } + if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) { + request.grant(request.getResources()); + return; + } + // Find what Android permissions we need before we can grant these WebKit permissions. ArrayList<String> androidPermissionsNeeded = new ArrayList<String>(); for (String webkitPermission : request.getResources()) { @@ -366,11 +371,11 @@ public class WebViewBrowserActivity extends Activity implements PopupMenu.OnMenu private void loadUrl(String url) { // Request read access if necessary - if ("file".equals(Uri.parse(url).getScheme())) { - if (PackageManager.PERMISSION_DENIED - == checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE)) { - requestPermissionsForPage(new FilePermissionRequest(url)); - } + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M + && "file".equals(Uri.parse(url).getScheme()) + && PackageManager.PERMISSION_DENIED + == checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE)) { + requestPermissionsForPage(new FilePermissionRequest(url)); } // If it is file:// and we don't have permission, they'll get the "Webpage not available" |