chiark
/
gitweb
/
~mdw
/
epls
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
b092d51
)
mkm3u: Report missing seasons and episodes properly.
author
Mark Wooding
<mdw@distorted.org.uk>
Mon, 14 Mar 2022 14:30:12 +0000
(14:30 +0000)
committer
Mark Wooding
<mdw@distorted.org.uk>
Mon, 14 Mar 2022 14:30:45 +0000
(14:30 +0000)
mkm3u
patch
|
blob
|
blame
|
history
diff --git
a/mkm3u
b/mkm3u
index 42f8413494a9a3f913544db664836671ef27a9ef..eff5d963c8cb065a4013d4c18669ccae1a0c08bc 100755
(executable)
--- a/
mkm3u
+++ b/
mkm3u
@@
-422,14
+422,27
@@
def parse_list(fn):
if i is None:
check(ads, "no title, but no audio directory")
check(season.implicitp, "audio source, but explicit season")
if i is None:
check(ads, "no title, but no audio directory")
check(season.implicitp, "audio source, but explicit season")
- src = ads.episodes[ep_i]
+ try: src = ads.episodes[ep_i]
+ except KeyError:
+ raise ExpectedError("episode %d not found in audio dir `%s'" %
+ ep_i, ads.dir)
elif iso:
src = iso
else:
check(vdname in vds, "title, but no iso or video directory")
elif iso:
src = iso
else:
check(vdname in vds, "title, but no iso or video directory")
- src = vds[vdname].seasons[season.i].episodes[ep_i]
+ try: vdir = vds[vdname]
+ except KeyError:
+ raise ExpectedError("video dir label `%s' not set" % vdname)
+ try: s = vdir.seasons[season.i]
+ except KeyError:
+ raise ExpectedError("season %d not found in video dir `%s'" %
+ (season.i, vdir.dir))
+ try: src = s.episodes[ep_i]
+ except KeyError:
+ raise ExpectedError("episode %d.%d not found in video dir `%s'" %
+ (season.i, ep_i, vdir.dir))
episode = season.add_episode(fake_epi, neps, title, src, i)
chapter = None
episode = season.add_episode(fake_epi, neps, title, src, i)
chapter = None