[vlc-commits] vout_subpictures: move decl and compare original stop value
Francois Cartegnie
git at videolan.org
Mon Jan 6 18:39:29 CET 2020
vlc | branch: master | Francois Cartegnie <fcvlcdev at free.fr> | Mon Dec 23 16:57:44 2019 +0100| [e4b42d28cfdb3883012c78d2b13e1e2eed70caf9] | committer: Francois Cartegnie
vout_subpictures: move decl and compare original stop value
prevents broken comparison if timestamp conversion fails
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=e4b42d28cfdb3883012c78d2b13e1e2eed70caf9
---
src/video_output/vout_subpictures.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/video_output/vout_subpictures.c b/src/video_output/vout_subpictures.c
index b278b11268..1092b17593 100644
--- a/src/video_output/vout_subpictures.c
+++ b/src/video_output/vout_subpictures.c
@@ -687,7 +687,6 @@ spu_SelectSubpictures(spu_t *spu, vlc_tick_t system_now,
for (size_t index = 0; index < channel->entries.size; index++) {
spu_render_entry_t *render_entry = &channel->entries.data[index];
subpicture_t *current = render_entry->subpic;
- bool is_stop_valid;
if (!spu_render_entry_IsSelected(render_entry, channel->id,
system_now, render_subtitle_date,
@@ -704,8 +703,9 @@ spu_SelectSubpictures(spu_t *spu, vlc_tick_t system_now,
*ephemer_order_ptr = current->i_order;
}
- is_stop_valid = !current->b_ephemer || render_entry->stop > render_entry->start;
-
+ /* If the spu is ephemer, the stop time is invalid, but it has been converted to
+ system time and used in comparisons below */
+ const bool is_stop_valid = !current->b_ephemer || render_entry->orgstop > render_entry->orgstart;
render_entry->is_late = is_stop_valid && current->i_stop <= render_date;
/* start_date will be used for correct automatic overlap support
More information about the vlc-commits
mailing list