Permalink
Browse files

Prevent transcode failures due to false "updated cut list".

The recording editor's undo/redo functionality modifies the cut list, so
when the transcoder sets the cut list and we save the undo information,
the DB was updated to show that the cut list had changed with a
MARK_UPDATED_CUT.  When the transcoder noticed the MARK_UPDATED_CUT
(which only happened on long-running transcodes--so wouldn't necessarily
happen on lossless transcodes or very fast systems), mythtranscode
exited with a REENCODE_CUTLIST_CHANGE error, thinking someone else had
changed the cut list.

This patch changes the delete map so that SetMap() does not save an undo
point; therefore, it prevents the MARK_UPDATED_CUT.  Since the UI does
not allow direct access to SetMap(), this shouldn't have any visible
effect--other than to allow transcoding to work properly.

This approach is a temporary fix until I've had time to finish a patch
which reorganizes the delete map code to separate the UI code from the
data/logic code.

Thanks for the report, zeloise, and for the additional information,
Otto.

Fixes #9729.
  • Loading branch information...
1 parent a76e380 commit e4be111e54b77ddc606e6072fa2f1f5fbddc4a0a @sphery sphery committed Jun 24, 2011
Showing with 3 additions and 1 deletion.
  1. +3 −1 mythtv/libs/libmythtv/deletemap.cpp
@@ -645,7 +645,9 @@ void DeleteMap::SetMap(const frm_dir_map_t &map)
Clear();
m_deleteMap = map;
m_deleteMap.detach();
- Push(QObject::tr("Set New Cut List"));
+ // Can't save an undo point for SetMap() or transcodes fail.
+ // Leaving as a marker for refactor.
+ //Push(QObject::tr("Set New Cut List"));
}
/// Loads the given commercial break map into the deleteMap.

0 comments on commit e4be111

Please sign in to comment.