ges-timeline: Properly calculate absolute diff of two unsigned integers

CID 1394491.
This commit is contained in:
Sebastian Dröge 2016-11-23 18:42:27 +02:00
parent d9ab6f14e8
commit f536db2b71

View file

@ -1300,14 +1300,20 @@ ges_timeline_snap_position (GESTimeline * timeline,
GESTrackElement *tmp_trackelement = GESTrackElement *tmp_trackelement =
g_hash_table_lookup (priv->by_object, iter_tc); g_hash_table_lookup (priv->by_object, iter_tc);
GESContainer *tmp_container = get_toplevel_container (tmp_trackelement); GESContainer *tmp_container = get_toplevel_container (tmp_trackelement);
GstClockTimeDiff diff;
if (tmp_container == container) if (tmp_container == container)
continue; continue;
if (ABS (timecode - *iter_tc) > smallest_offset) if (timecode > *iter_tc)
diff = timecode - *iter_tc;
else
diff = *iter_tc - timecode;
if (diff > smallest_offset)
break; break;
smallest_offset = ABS (timecode - *iter_tc); smallest_offset = diff;
ret = iter_tc; ret = iter_tc;
} }