From 6e95d9a398daaa56803ebc950802fff40400c730 Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Mon, 12 Nov 2018 19:35:23 +1000 Subject: [PATCH] catch maxpath error in mediasrv https://anki.tenderapp.com/discussions/ankidesktop/30729-valueerror-in-ospathisdir-call-in-mediasrvpy-for-elements-with-long-strings-as-src --- aqt/mediasrv.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/aqt/mediasrv.py b/aqt/mediasrv.py index f1fffb90c..9a36a9827 100644 --- a/aqt/mediasrv.py +++ b/aqt/mediasrv.py @@ -82,9 +82,17 @@ class RequestHandler(http.server.SimpleHTTPRequestHandler): def send_head(self): path = self.translate_path(self.path) path = self._redirectWebExports(path) - if os.path.isdir(path): + try: + isdir = os.path.isdir(path) + except ValueError: + # path too long exception on Windows self.send_error(HTTPStatus.NOT_FOUND, "File not found") return None + + if isdir: + self.send_error(HTTPStatus.NOT_FOUND, "File not found") + return None + ctype = self.guess_type(path) try: f = open(path, 'rb')