From bcd91d5020a5a4fd374de093afbeee5bc0e2fbc7 Mon Sep 17 00:00:00 2001 From: "R.D. Vaughan" Date: Sun, 2 Oct 2011 13:40:24 -0400 Subject: [PATCH] Fixed MiroBridge abort when Miro metadata has no video filename Sometimes Miro metadata has no video filename. Skip and remove these invalid Miro items. (cherry picked from commit 57d0e8b5ff02691a8765ab25c5a8aacc004b67d5) --- .../mirobridge/mirobridge_interpreter_4_0_2.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/mythtv/contrib/imports/mirobridge/mirobridge/mirobridge_interpreter_4_0_2.py b/mythtv/contrib/imports/mirobridge/mirobridge/mirobridge_interpreter_4_0_2.py index 3ebe5d9de8c..2197563c73f 100644 --- a/mythtv/contrib/imports/mirobridge/mirobridge/mirobridge_interpreter_4_0_2.py +++ b/mythtv/contrib/imports/mirobridge/mirobridge/mirobridge_interpreter_4_0_2.py @@ -278,6 +278,14 @@ def do_mythtv_getunwatched(self, line): if hasattr(it.get_parent(), u'url'): if filetypes.is_torrent_filename(it.get_parent().url): continue + + # Any item without a proper file name needs to be removed as Miro metadata is corrupt + if it.get_filename() == None: + it.expire() + self.statistics[u'Miro_videos_deleted']+=1 + logging.info(u'Unwatched video (%s) has been removed from Miro as item had no valid file name' % it.get_title()) + continue + self.printItems(it) self.videofiles.append(self._get_item_dict(it)) if self.verbose: @@ -304,6 +312,14 @@ def do_mythtv_getwatched(self, line): if hasattr(it.get_parent(), u'url'): if filetypes.is_torrent_filename(it.get_parent().url): continue + + # Any item without a proper file name needs to be removed as Miro metadata is corrupt + if it.get_filename() == None: + it.expire() + self.statistics[u'Miro_videos_deleted']+=1 + logging.info(u'Watched video (%s) has been removed from Miro as item had no valid file name' % it.get_title()) + continue + self.printItems(it) self.videofiles.append(self._get_item_dict(it)) if self.verbose: