• jer.noble@apple.com's avatar
    TimeRanges::nearest() returns incorrect results. · b6ea0d4a
    jer.noble@apple.com authored
    https://bugs.webkit.org/show_bug.cgi?id=114483
    
    Reviewed by Eric Carlson.
    
    .:
    
    Add symbols needed by WebCoreTestSupport to exports list.
    
    * Source/autotools/symbols.filter:
    
    Source/WebCore:
    
    Test: media/timeranges-nearest.html
    
    TimeRanges::nearest() has had an incorrect algorithm since its
    addition, which has gone unnoticed because no media engine supports
    seekable ranges with greater than one entry, and no media engine
    seekable ranges with startTime values > 0.
    
    Fix the algorithm used to walk a TimeRanges object; return the closest
    time, not the smallest delta between range and target time.
    * html/TimeRanges.cpp:
    (TimeRanges::nearest):
    
    Add some internal functions to allow us to write LayoutTests for
    TimeRanges objects:
    * WebCore.exp.in:
    * testing/Internals.cpp:
    (WebCore::Internals::createTimeRanges):
    (WebCore::Internals::closestTimeToTimeRanges):
    * testing/Internals.h:
    * testing/Internals.idl:
    
    Source/WebKit:
    
    Add symbols needed by WebCoreTestSupport to the exports list.
    
    * WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
    
    Source/WebKit/win:
    
    Add symbols needed by WebCoreTestSupport to the exports list.
    
    * WebKit.vcproj/WebKitExports.def.in:
    
    LayoutTests:
    
    * media/timeranges-nearest-expected.txt: Added.
    * media/timeranges-nearest.html: Added.
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@148288 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    b6ea0d4a
ChangeLog 261 KB