| Index: third_party/WebKit/Source/modules/filesystem/DirectoryReader.cpp
|
| diff --git a/third_party/WebKit/Source/modules/filesystem/DirectoryReader.cpp b/third_party/WebKit/Source/modules/filesystem/DirectoryReader.cpp
|
| index 8143c8d2eec64d1e5ee12a7ff4b6774cb4090853..cda4d5750f4e8315f0f120dc1576ed4baaecfc7e 100644
|
| --- a/third_party/WebKit/Source/modules/filesystem/DirectoryReader.cpp
|
| +++ b/third_party/WebKit/Source/modules/filesystem/DirectoryReader.cpp
|
| @@ -100,18 +100,19 @@ void DirectoryReader::readEntries(EntriesCallback* entriesCallback, ErrorCallbac
|
| }
|
|
|
| if (m_error) {
|
| - filesystem()->scheduleCallback(errorCallback, m_error);
|
| + filesystem()->reportError(errorCallback, m_error.get());
|
| return;
|
| }
|
|
|
| if (m_entriesCallback) {
|
| // Non-null m_entriesCallback means multiple readEntries() calls are made concurrently. We don't allow doing it.
|
| - filesystem()->scheduleCallback(errorCallback, FileError::create(FileError::INVALID_STATE_ERR));
|
| + filesystem()->reportError(errorCallback, FileError::create(FileError::INVALID_STATE_ERR));
|
| return;
|
| }
|
|
|
| if (!m_hasMoreEntries || !m_entries.isEmpty()) {
|
| - filesystem()->scheduleCallback(entriesCallback, m_entries);
|
| + if (entriesCallback)
|
| + DOMFileSystem::scheduleCallback(filesystem()->getExecutionContext(), createSameThreadTask(&EntriesCallback::handleEvent, wrapPersistent(entriesCallback), PersistentHeapVector<Member<Entry>>(m_entries)));
|
| m_entries.clear();
|
| return;
|
| }
|
|
|