Chromium Code Reviews| Index: Source/web/LocalFileSystemClient.cpp |
| diff --git a/Source/web/LocalFileSystemClient.cpp b/Source/web/LocalFileSystemClient.cpp |
| index 9f933a9369fe80015f6fd48a70265bef894dfdff..3b4f5dbf850393484828535a96c5f2424ee49976 100644 |
| --- a/Source/web/LocalFileSystemClient.cpp |
| +++ b/Source/web/LocalFileSystemClient.cpp |
| @@ -66,7 +66,19 @@ bool LocalFileSystemClient::allowFileSystem(ExecutionContext* context) |
| return WorkerPermissionClient::from(*toWorkerGlobalScope(context))->allowFileSystem(); |
| } |
| -void LocalFileSystemClient::requestFileSystemAccess(ExecutionContext* context, PassOwnPtr<WebCore::PermissionCallbacks> callbacks) |
| +bool LocalFileSystemClient::requestFileSystemAccessSync(ExecutionContext* context) |
| +{ |
| + ASSERT(context); |
| + if (context->isDocument()) { |
| + Document* document = toDocument(context); |
|
jochen (gone - plz use gerrit)
2014/05/15 14:35:20
this should not be reachable, no?
Xi Han
2014/05/15 15:33:25
Good catch, thanks.
On 2014/05/15 14:35:20, joche
|
| + WebLocalFrameImpl* webFrame = WebLocalFrameImpl::fromFrame(document->frame()); |
| + return !webFrame->permissionClient() || webFrame->permissionClient()->requestFileSystemAccessSync(); |
| + } |
| + ASSERT(context->isWorkerGlobalScope()); |
| + return WorkerPermissionClient::from(*toWorkerGlobalScope(context))->requestFileSystemAccessSync(); |
| +} |
| + |
| +void LocalFileSystemClient::requestFileSystemAccessAsync(ExecutionContext* context, PassOwnPtr<WebCore::PermissionCallbacks> callbacks) |
| { |
| ASSERT(context); |
| if (context->isDocument()) { |
| @@ -76,11 +88,11 @@ void LocalFileSystemClient::requestFileSystemAccess(ExecutionContext* context, P |
| callbacks->onAllowed(); |
| return; |
| } |
| - webFrame->permissionClient()->requestFileSystemAccess(callbacks); |
| + webFrame->permissionClient()->requestFileSystemAccessAsync(callbacks); |
| return; |
| } |
| ASSERT(context->isWorkerGlobalScope()); |
| - WorkerPermissionClient::from(*toWorkerGlobalScope(context))->requestFileSystemAccess(callbacks); |
| + WorkerPermissionClient::from(*toWorkerGlobalScope(context))->requestFileSystemAccessAsync(callbacks); |
| } |
| LocalFileSystemClient::LocalFileSystemClient() |