OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011, 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2011, 2012 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 14 matching lines...) Expand all Loading... |
25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | 25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
29 */ | 29 */ |
30 | 30 |
31 #include "config.h" | 31 #include "config.h" |
32 #include "modules/filesystem/InspectorFileSystemAgent.h" | 32 #include "modules/filesystem/InspectorFileSystemAgent.h" |
33 | 33 |
34 #include "bindings/core/v8/ExceptionStatePlaceholder.h" | 34 #include "bindings/core/v8/ExceptionStatePlaceholder.h" |
| 35 #include "bindings/core/v8/UnionTypesCore.h" |
35 #include "core/dom/DOMArrayBuffer.h" | 36 #include "core/dom/DOMArrayBuffer.h" |
36 #include "core/dom/DOMImplementation.h" | 37 #include "core/dom/DOMImplementation.h" |
37 #include "core/dom/Document.h" | 38 #include "core/dom/Document.h" |
38 #include "core/events/Event.h" | 39 #include "core/events/Event.h" |
39 #include "core/fileapi/File.h" | 40 #include "core/fileapi/File.h" |
40 #include "core/fileapi/FileError.h" | 41 #include "core/fileapi/FileError.h" |
41 #include "core/fileapi/FileReader.h" | 42 #include "core/fileapi/FileReader.h" |
42 #include "core/frame/LocalFrame.h" | 43 #include "core/frame/LocalFrame.h" |
43 #include "core/html/VoidCallback.h" | 44 #include "core/html/VoidCallback.h" |
44 #include "core/html/parser/TextResourceDecoder.h" | 45 #include "core/html/parser/TextResourceDecoder.h" |
(...skipping 430 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
475 Blob* blob = file->Blob::slice(m_start, m_end, IGNORE_EXCEPTION); | 476 Blob* blob = file->Blob::slice(m_start, m_end, IGNORE_EXCEPTION); |
476 m_reader->setOnload(this); | 477 m_reader->setOnload(this); |
477 m_reader->setOnerror(this); | 478 m_reader->setOnerror(this); |
478 | 479 |
479 m_reader->readAsArrayBuffer(blob, IGNORE_EXCEPTION); | 480 m_reader->readAsArrayBuffer(blob, IGNORE_EXCEPTION); |
480 return true; | 481 return true; |
481 } | 482 } |
482 | 483 |
483 void FileContentRequest::didRead() | 484 void FileContentRequest::didRead() |
484 { | 485 { |
485 RefPtr<DOMArrayBuffer> buffer = m_reader->arrayBufferResult(); | 486 StringOrArrayBuffer resultAttribute; |
| 487 m_reader->result(resultAttribute); |
| 488 RefPtr<DOMArrayBuffer> buffer = resultAttribute.getAsArrayBuffer(); |
486 | 489 |
487 if (!m_readAsText) { | 490 if (!m_readAsText) { |
488 String result = base64Encode(static_cast<char*>(buffer->data()), buffer-
>byteLength()); | 491 String result = base64Encode(static_cast<char*>(buffer->data()), buffer-
>byteLength()); |
489 reportResult(static_cast<FileError::ErrorCode>(0), &result, 0); | 492 reportResult(static_cast<FileError::ErrorCode>(0), &result, 0); |
490 return; | 493 return; |
491 } | 494 } |
492 | 495 |
493 OwnPtr<TextResourceDecoder> decoder = TextResourceDecoder::create(m_mimeType
, m_charset, true); | 496 OwnPtr<TextResourceDecoder> decoder = TextResourceDecoder::create(m_mimeType
, m_charset, true); |
494 String result = decoder->decode(static_cast<char*>(buffer->data()), buffer->
byteLength()); | 497 String result = decoder->decode(static_cast<char*>(buffer->data()), buffer->
byteLength()); |
495 result = result + decoder->flush(); | 498 result = result + decoder->flush(); |
(...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
728 return 0; | 731 return 0; |
729 } | 732 } |
730 | 733 |
731 void InspectorFileSystemAgent::trace(Visitor* visitor) | 734 void InspectorFileSystemAgent::trace(Visitor* visitor) |
732 { | 735 { |
733 visitor->trace(m_page); | 736 visitor->trace(m_page); |
734 InspectorBaseAgent::trace(visitor); | 737 InspectorBaseAgent::trace(visitor); |
735 } | 738 } |
736 | 739 |
737 } // namespace blink | 740 } // namespace blink |
OLD | NEW |