Changeset 228089 in webkit


Ignore:
Timestamp:
Feb 5, 2018 1:14:09 AM (6 years ago)
Author:
aboya@igalia.com
Message:

Fix bug in MediaTime comparison for negative values with different scale.
https://bugs.webkit.org/show_bug.cgi?id=182433

Source/WTF:

Reviewed by Xabier Rodriguez-Calvar.

  • wtf/MediaTime.cpp:

(WTF::MediaTime::compare const):

Tools:

Improved test coverage for MediaTime::compare().

Reviewed by Xabier Rodriguez-Calvar.

  • TestWebKitAPI/Tests/WTF/MediaTime.cpp:

(TestWebKitAPI::TEST):

Location:
trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WTF/ChangeLog

    r228022 r228089  
     12018-02-05  Alicia Boya García  <aboya@igalia.com>
     2
     3        Fix bug in MediaTime comparison for negative values with different scale.
     4        https://bugs.webkit.org/show_bug.cgi?id=182433
     5
     6        Reviewed by Xabier Rodriguez-Calvar.
     7
     8        * wtf/MediaTime.cpp:
     9        (WTF::MediaTime::compare const):
     10
    1112018-02-02  Mark Lam  <mark.lam@apple.com>
    212
  • trunk/Source/WTF/wtf/MediaTime.cpp

    r225764 r228089  
    392392        return m_timeScale < rhs.m_timeScale ? GreaterThan : LessThan;
    393393
    394     if (m_timeValue < rhs.m_timeValue && m_timeScale > rhs.m_timeScale)
    395         return LessThan;
    396 
    397     if (m_timeValue > rhs.m_timeValue && m_timeScale < rhs.m_timeScale)
    398         return GreaterThan;
     394    if (m_timeValue >= 0) {
     395        if (m_timeValue < rhs.m_timeValue && m_timeScale > rhs.m_timeScale)
     396            return LessThan;
     397
     398        if (m_timeValue > rhs.m_timeValue && m_timeScale < rhs.m_timeScale)
     399            return GreaterThan;
     400    } else {
     401        if (m_timeValue < rhs.m_timeValue && m_timeScale < rhs.m_timeScale)
     402            return LessThan;
     403
     404        if (m_timeValue > rhs.m_timeValue && m_timeScale > rhs.m_timeScale)
     405            return GreaterThan;
     406    }
    399407
    400408    int64_t lhsFactor;
  • trunk/Tools/ChangeLog

    r228088 r228089  
     12018-02-05  Alicia Boya García  <aboya@igalia.com>
     2
     3        Fix bug in MediaTime comparison for negative values with different scale.
     4        https://bugs.webkit.org/show_bug.cgi?id=182433
     5
     6        Improved test coverage for MediaTime::compare().
     7
     8        Reviewed by Xabier Rodriguez-Calvar.
     9
     10        * TestWebKitAPI/Tests/WTF/MediaTime.cpp:
     11        (TestWebKitAPI::TEST):
     12
    1132018-02-05  Carlos Garcia Campos  <cgarcia@igalia.com>
    214
  • trunk/Tools/TestWebKitAPI/Tests/WTF/MediaTime.cpp

    r218247 r228089  
    8686    EXPECT_EQ(MediaTime(2, 1) == MediaTime(2, 1), true);
    8787    EXPECT_EQ(MediaTime(2, 1) == MediaTime(4, 2), true);
     88    EXPECT_EQ(MediaTime(-2, 1) < MediaTime(-1, 1), true);
     89    EXPECT_EQ(MediaTime(-2, 1) <= MediaTime(-1, 1), true);
     90    EXPECT_EQ(MediaTime(-1, 1) < MediaTime(-2, 1), false);
     91    EXPECT_EQ(MediaTime(-1, 1) < MediaTime(2, 1), true);
     92    EXPECT_EQ(MediaTime(1, 1) > MediaTime(-2, 1), true);
     93    EXPECT_EQ(MediaTime(-8, 10) >= MediaTime(-1, 1), true);
    8894    EXPECT_TRUE((bool)MediaTime(1, 1));
    8995    EXPECT_TRUE(!MediaTime(0, 1));
Note: See TracChangeset for help on using the changeset viewer.