summaryrefslogtreecommitdiffstats
path: root/chromium/content/browser/file_system_access/native_file_system_directory_handle_impl.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/content/browser/file_system_access/native_file_system_directory_handle_impl.cc')
-rw-r--r--chromium/content/browser/file_system_access/native_file_system_directory_handle_impl.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/chromium/content/browser/file_system_access/native_file_system_directory_handle_impl.cc b/chromium/content/browser/file_system_access/native_file_system_directory_handle_impl.cc
index 8b97a1e0156..2992957115d 100644
--- a/chromium/content/browser/file_system_access/native_file_system_directory_handle_impl.cc
+++ b/chromium/content/browser/file_system_access/native_file_system_directory_handle_impl.cc
@@ -158,6 +158,14 @@ void NativeFileSystemDirectoryHandleImpl::GetEntries(
base::OnTaskRunnerDeleter(base::SequencedTaskRunnerHandle::Get()));
listener->reset_on_disconnect();
+ if (GetReadPermissionStatus() != PermissionStatus::GRANTED) {
+ (*listener)->DidReadDirectory(
+ native_file_system_error::FromStatus(
+ NativeFileSystemStatus::kPermissionDenied),
+ {}, false);
+ return;
+ }
+
DoFileSystemOperation(
FROM_HERE, &FileSystemOperationRunner::ReadDirectory,
base::BindRepeating(