Commit 0b1baa3
committed
runloop: dispatch movie_stop on MOVIE_END instead of movie_stop_playback
When BSV_FLAG_MOVIE_END is set, runloop_check_state unconditionally
calls movie_stop_playback. That function early-returns at the
BSV_FLAG_MOVIE_PLAYBACK check (task_movie.c:377) when the active
session is a recording, leaving bsv_movie_state_handle alive with
its file still open.
The MOVIE_END flag is set from both playback and recording paths.
bsv_movie_read_next_events (the source of most MOVIE_END sets) is
called during recording when seeking, per the comment at
input/bsv/bsvmovie.c:1092, and its truncation/I/O-error paths set
MOVIE_END unconditionally. The "Didn't really stop movie!" log at
task_movie.c:438 fires whenever this happens.
Use movie_stop, which dispatches to movie_stop_playback or
movie_stop_record based on the flags, so recording sessions are
torn down correctly.1 parent a646194 commit 0b1baa3
1 file changed
Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7486 | 7486 | | |
7487 | 7487 | | |
7488 | 7488 | | |
7489 | | - | |
| 7489 | + | |
7490 | 7490 | | |
7491 | 7491 | | |
7492 | 7492 | | |
| |||
0 commit comments