timeline-tree: not checking in-point for non-sources
Unless a timeline element is a GESSource
, timeline-tree does not check that the start
, duration
or in-point
of an element would become negative with the edit. This can lead to an underflow in the in-point
when trimming:
>>> tl = GES.Timeline.new()
>>> layer = tl.append_layer()
>>> clip = GES.EffectClip.new("textoverlay", "identity")
>>> clip.set_start(20)
True
>>> clip.set_duration(20)
True
>>> clip.set_inpoint(10)
True
>>> layer.add_clip(clip)
True
>>> clip
effectclip1 [0:00:00.000000020 (0:00:00.000000010) 0:00:00.000000020]
>>> clip.trim(0)
True
>>> clip
effectclip1 [0:00:00.000000000 (5124095:34:33.709551606) 0:00:00.000000040]
>>> clip.inpoint # underflow
18446744073709551606