Skip to content
  • jianli@chromium.org's avatar
    Support FileReaderSync in workers. · f3b91d69
    jianli@chromium.org authored
    https://bugs.webkit.org/show_bug.cgi?id=44657
    
    Reviewed by David Levin.
    
    WebCore:
    
    Also add FileException interface and make Blob/File/FileError useable in
    workers.
    
    Tests: fast/files/workers/worker-read-blob-async.html
           fast/files/workers/worker-read-blob-sync.html
           fast/files/workers/worker-read-file-async.html
           fast/files/workers/worker-read-file-sync.html
    
    * DerivedSources.cpp:
    * DerivedSources.make:
    * WebCore.gypi:
    * WebCore.pro:
    * WebCore.vcproj/WebCore.vcproj:
    * WebCore.xcodeproj/project.pbxproj:
    * fileapi/Blob.idl: Added NoStaticTables attribute.
    * fileapi/File.idl: Added NoStaticTables attribute.
    * fileapi/FileError.idl: Added NoStaticTables attribute.
    * fileapi/FileException.h: Added.
    * fileapi/FileException.idl: Added.
    * fileapi/FileReaderSync.cpp: Added.
    * fileapi/FileReaderSync.h: Added.
    * fileapi/FileReaderSync.idl: Added.
    * workers/WorkerContext.idl: Expose FileReaderSync and BlodBuilder in workers.
    
    LayoutTests:
    
    Added 4 test files to test FileReaderSync in workers.
    
    * fast/files/read-blob-async.html:
    * fast/files/read-file-async.html:
    * fast/files/resources/read-common.js:
    (readBlobAsBinaryString):
    (readBlobAsText):
    (readBlobAsDataURL):
    (_readBlobAsBinaryStringAsync):
    (_readBlobAsTextAsync):
    (_readBlobAsDataURLAsync):
    (_readBlobAsBinaryStringSync):
    (_readBlobAsTextSync):
    (_readBlobAsDataURLSync):
    (createReaderSync):
    * fast/files/resources/read-blob-test-cases.js:
    (runNextTest):
    * fast/files/resources/read-file-test-cases.js:
    (runNextTest):
    (testMultipleReads):
    * fast/files/resources/setup-for-read-common.js:
    (log):
    (startWorker.worker.onmessage):
    (startWorker.worker.onerror):
    (startWorker):
    * fast/files/workers/resources/worker-read-blob-async.js: Added.
    * fast/files/workers/resources/worker-read-blob-sync.js: Added.
    * fast/files/workers/resources/worker-read-common.js: Added.
    * fast/files/workers/resources/worker-read-file-async.js: Added.
    * fast/files/workers/resources/worker-read-file-sync.js: Added.
    * fast/files/workers/worker-read-blob-async-expected.txt: Added.
    * fast/files/workers/worker-read-blob-async.html: Added.
    * fast/files/workers/worker-read-blob-sync-expected.txt: Added.
    * fast/files/workers/worker-read-blob-sync.html: Added.
    * fast/files/workers/worker-read-file-async-expected.txt: Added.
    * fast/files/workers/worker-read-file-async.html: Added.
    * fast/files/workers/worker-read-file-sync-expected.txt: Added.
    * fast/files/workers/worker-read-file-sync.html: Added.
    * platform/chromium/test_expectations.txt:
    * platform/gtk/Skipped:
    * platform/mac-wk2/Skipped:
    * platform/qt/Skipped:
    * platform/win/Skipped:
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@66461 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    f3b91d69