diff --git a/src/calibre/ebooks/metadata/sources/covers.py b/src/calibre/ebooks/metadata/sources/covers.py index bae9203f70..698abfbfce 100644 --- a/src/calibre/ebooks/metadata/sources/covers.py +++ b/src/calibre/ebooks/metadata/sources/covers.py @@ -100,7 +100,8 @@ def run_download(log, results, abort, wait_time = msprefs['wait_after_first_cover_result'] found_results = {} - while True: + start_time = time.time() # Use a global timeout to workaround misbehaving plugins that hang + while time.time() - start_time < 301: time.sleep(0.1) try: x = rq.get_nowait()