| Index: Source/modules/filesystem/DraggedIsolatedFileSystem.cpp
|
| diff --git a/Source/modules/filesystem/DraggedIsolatedFileSystem.cpp b/Source/modules/filesystem/DraggedIsolatedFileSystem.cpp
|
| index e0abfdc218bcb1dd7bec7faf75867095425e387a..7f0e01cc7e2055b74f283c447e9837eceb74ba46 100644
|
| --- a/Source/modules/filesystem/DraggedIsolatedFileSystem.cpp
|
| +++ b/Source/modules/filesystem/DraggedIsolatedFileSystem.cpp
|
| @@ -43,12 +43,14 @@ DraggedIsolatedFileSystem::~DraggedIsolatedFileSystem()
|
| {
|
| }
|
|
|
| -DOMFileSystem* DraggedIsolatedFileSystem::getDOMFileSystem(ExecutionContext* executionContext)
|
| +DOMFileSystem* DraggedIsolatedFileSystem::getDOMFileSystem(DataObject* host, ExecutionContext* executionContext)
|
| {
|
| - ASSERT(!m_filesystemId.isEmpty());
|
| - if (!m_filesystem)
|
| - m_filesystem = DOMFileSystem::createIsolatedFileSystem(executionContext, m_filesystemId);
|
| - return m_filesystem.get();
|
| + DraggedIsolatedFileSystem* draggedIsolatedFileSystem = from(host);
|
| + if (!draggedIsolatedFileSystem)
|
| + return 0;
|
| + if (!draggedIsolatedFileSystem->m_filesystem)
|
| + draggedIsolatedFileSystem->m_filesystem = DOMFileSystem::createIsolatedFileSystem(executionContext, host->filesystemId());
|
| + return draggedIsolatedFileSystem->m_filesystem.get();
|
| }
|
|
|
| // static
|
| @@ -63,9 +65,9 @@ DraggedIsolatedFileSystem* DraggedIsolatedFileSystem::from(DataObject* dataObjec
|
| return static_cast<DraggedIsolatedFileSystem*>(WillBeHeapSupplement<DataObject>::from(dataObject, supplementName()));
|
| }
|
|
|
| -DraggedIsolatedFileSystem::DraggedIsolatedFileSystem(const String& filesystemId)
|
| - : m_filesystemId(filesystemId)
|
| +DraggedIsolatedFileSystem::DraggedIsolatedFileSystem(DataObject& host, const String& filesystemId)
|
| {
|
| + host.setFilesystemId(filesystemId);
|
| }
|
|
|
| void DraggedIsolatedFileSystem::trace(Visitor* visitor)
|
|
|