TimeRanges::nearest() returns incorrect results.
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
Showing with 181 additions and 9 deletions