File tree Expand file tree Collapse file tree 3 files changed +8
-2
lines changed
Expand file tree Collapse file tree 3 files changed +8
-2
lines changed Original file line number Diff line number Diff line change @@ -61,7 +61,7 @@ class TimeRange
6161 // / duration is invalid.
6262 bool is_invalid_range () const noexcept
6363 {
64- return _start_time.is_invalid_time () || _duration.is_invalid_time ();
64+ return _start_time.is_invalid_time () || _duration.is_invalid_time () || _duration. value () < 0.0 ;
6565 }
6666
6767 // / @brief Returns true if the time range is valid.
@@ -70,7 +70,7 @@ class TimeRange
7070 // / duration are valid.
7171 bool is_valid_range () const noexcept
7272 {
73- return _start_time.is_valid_time () && _duration.is_valid_time ();
73+ return _start_time.is_valid_time () && _duration.is_valid_time () && _duration. value () >= 0.0 ;
7474 }
7575
7676 constexpr RationalTime start_time () const noexcept { return _start_time; }
Original file line number Diff line number Diff line change @@ -162,6 +162,9 @@ main(int argc, char** argv)
162162 otime::TimeRange r2 (0.0 , 24.0 , 24.0 );
163163 assertTrue (r2.is_valid_range ());
164164 assertFalse (r2.is_invalid_range ());
165+ otime::TimeRange r3 (0.0 , -24.0 , 24.0 );
166+ assertFalse (r3.is_valid_range ());
167+ assertTrue (r3.is_invalid_range ());
165168 });
166169
167170 tests.run (argc, argv);
Original file line number Diff line number Diff line change @@ -889,6 +889,9 @@ def test_valid(self):
889889 tr2 = otio .opentime .TimeRange (0 , 48 , 24 )
890890 self .assertTrue (tr2 .is_valid_range ())
891891 self .assertFalse (tr2 .is_invalid_range ())
892+ tr3 = otio .opentime .TimeRange (0 , - 48 , 24 )
893+ self .assertFalse (tr3 .is_valid_range ())
894+ self .assertTrue (tr3 .is_invalid_range ())
892895
893896 def test_duration_validation (self ):
894897 tr = otio .opentime .TimeRange ()
You can’t perform that action at this time.
0 commit comments