summaryrefslogtreecommitdiffstats
path: root/gallery_dl/util.py
diff options
context:
space:
mode:
Diffstat (limited to 'gallery_dl/util.py')
-rw-r--r--gallery_dl/util.py20
1 files changed, 14 insertions, 6 deletions
diff --git a/gallery_dl/util.py b/gallery_dl/util.py
index d25194e..bccae2d 100644
--- a/gallery_dl/util.py
+++ b/gallery_dl/util.py
@@ -428,18 +428,26 @@ def build_duration_func(duration, min=0.0):
if not duration:
return None
- try:
- lower, upper = duration
- except TypeError:
- pass
+ if isinstance(duration, str):
+ lower, _, upper = duration.partition("-")
+ lower = float(lower)
else:
+ try:
+ lower, upper = duration
+ except TypeError:
+ lower, upper = duration, None
+
+ if upper:
+ upper = float(upper)
return functools.partial(
random.uniform,
lower if lower > min else min,
upper if upper > min else min,
)
-
- return functools.partial(identity, duration if duration > min else min)
+ else:
+ if lower < min:
+ lower = min
+ return lambda: lower
def build_extractor_filter(categories, negate=True, special=None):