void DirectoryReader::addEntries(const EntryHeapVector& entries) { m_entries.appendVector(entries); m_errorCallback = nullptr; if (m_entriesCallback) { EntriesCallback* entriesCallback = m_entriesCallback.release(); EntryHeapVector entries; entries.swap(m_entries); entriesCallback->handleEvent(entries); } }
void EntriesCallbacks::didReadDirectoryEntries(bool hasMore) { m_directoryReader->setHasMoreEntries(hasMore); EntryHeapVector entries; entries.swap(m_entries); // FIXME: delay the callback iff shouldScheduleCallback() is true. InspectorInstrumentationCookie cookie = InspectorInstrumentation::traceAsyncCallbackStarting(m_executionContext.get(), m_asyncOperationId); if (m_successCallback) m_successCallback->handleEvent(entries); InspectorInstrumentation::traceAsyncCallbackCompleted(cookie); if (!hasMore) InspectorInstrumentation::traceAsyncOperationCompleted(m_executionContext.get(), m_asyncOperationId); }