| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2010 Google Inc. All rights reserved. | 2 * Copyright (C) 2010 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 180 const size_t m_maxRunningReaders; | 180 const size_t m_maxRunningReaders; |
| 181 | 181 |
| 182 using FileReaderDeque = HeapDeque<Member<FileReader>>; | 182 using FileReaderDeque = HeapDeque<Member<FileReader>>; |
| 183 using FileReaderHashSet = HeapHashSet<Member<FileReader>>; | 183 using FileReaderHashSet = HeapHashSet<Member<FileReader>>; |
| 184 | 184 |
| 185 FileReaderDeque m_pendingReaders; | 185 FileReaderDeque m_pendingReaders; |
| 186 FileReaderHashSet m_runningReaders; | 186 FileReaderHashSet m_runningReaders; |
| 187 }; | 187 }; |
| 188 | 188 |
| 189 FileReader* FileReader::create(ExecutionContext* context) { | 189 FileReader* FileReader::create(ExecutionContext* context) { |
| 190 FileReader* fileReader = new FileReader(context); | 190 return new FileReader(context); |
| 191 fileReader->suspendIfNeeded(); | |
| 192 return fileReader; | |
| 193 } | 191 } |
| 194 | 192 |
| 195 FileReader::FileReader(ExecutionContext* context) | 193 FileReader::FileReader(ExecutionContext* context) |
| 196 : SuspendableObject(context), | 194 : ContextLifecycleObserver(context), |
| 197 m_state(kEmpty), | 195 m_state(kEmpty), |
| 198 m_loadingState(LoadingStateNone), | 196 m_loadingState(LoadingStateNone), |
| 199 m_stillFiringEvents(false), | 197 m_stillFiringEvents(false), |
| 200 m_readType(FileReaderLoader::ReadAsBinaryString), | 198 m_readType(FileReaderLoader::ReadAsBinaryString), |
| 201 m_lastProgressNotificationTimeMS(0) {} | 199 m_lastProgressNotificationTimeMS(0) {} |
| 202 | 200 |
| 203 FileReader::~FileReader() { | 201 FileReader::~FileReader() { |
| 204 terminate(); | 202 terminate(); |
| 205 } | 203 } |
| 206 | 204 |
| (...skipping 258 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 465 dispatchEvent(ProgressEvent::create(type, true, m_loader->bytesLoaded(), | 463 dispatchEvent(ProgressEvent::create(type, true, m_loader->bytesLoaded(), |
| 466 m_loader->totalBytes())); | 464 m_loader->totalBytes())); |
| 467 else | 465 else |
| 468 dispatchEvent( | 466 dispatchEvent( |
| 469 ProgressEvent::create(type, false, m_loader->bytesLoaded(), 0)); | 467 ProgressEvent::create(type, false, m_loader->bytesLoaded(), 0)); |
| 470 } | 468 } |
| 471 | 469 |
| 472 DEFINE_TRACE(FileReader) { | 470 DEFINE_TRACE(FileReader) { |
| 473 visitor->trace(m_error); | 471 visitor->trace(m_error); |
| 474 EventTargetWithInlineData::trace(visitor); | 472 EventTargetWithInlineData::trace(visitor); |
| 475 SuspendableObject::trace(visitor); | 473 ContextLifecycleObserver::trace(visitor); |
| 476 } | 474 } |
| 477 | 475 |
| 478 } // namespace blink | 476 } // namespace blink |
| OLD | NEW |