diff --git a/src/vfs/extfs/helpers/torrent.in b/src/vfs/extfs/helpers/torrent.in old mode 100644 new mode 100755 index 4e7a4236ca..08b1b5911c --- a/src/vfs/extfs/helpers/torrent.in +++ b/src/vfs/extfs/helpers/torrent.in @@ -425,18 +425,23 @@ def decode_torrent(): def decode_datetime_asc(dt): try: - return asctime(localtime(float(dt))) - except ValueError: + lt = localtime(float(dt)) + Y = lt[0] + if Y > 9999: + raise ValueError + except (OSError, ValueError): return datetime.max.ctime() + else: + return asctime(lt) def decode_datetime(dt): try: - Y, m, d, H, M = localtime(float(dt))[0:5] - except ValueError: - return datetime.max.ctime() - if Y > 9999: - Y = 9999 + Y, m, d, H, M = localtime(float(dt))[:5] + if Y > 9999: + raise ValueError + except (OSError, ValueError): + Y, m, d, H, M = datetime.max.timetuple()[:5] return "%02d-%02d-%d %02d:%02d" % (m, d, Y, H, M)