[video] Fix watched state / last played not preserved on internet update #23667
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
… of movies / TV show episodes.
Fixes a regression introduced with #20842 (@DaVukovic fyi), Changing the default value of advanced settings
m_bVideoLibraryImportWatchedState
to true has an unexpected side effect.When refreshing a movie/episode data from the internet and abovementioned setting is set to true, this triggers a bug that resets the play count of the movie/episode to zero, which means movie/episode is unwatched. Internet update does never provide updated play counts, but the code that stores the new values into the video database ignores this fact.
To reproduce:
importwatchedstate
is not manually set to false in advancedsettings.xml==> All formerly episodes marked watched are now unwatched again.
@enen92 fix is trivial - like we already do for resume points, we need to check validity of the play count before overwriting existing database value. Code review should be easy.
@fuzzard this should be backported.