diff options
| -rw-r--r-- | src/wikiget/dl.py | 21 |
1 files changed, 11 insertions, 10 deletions
diff --git a/src/wikiget/dl.py b/src/wikiget/dl.py index a29e049..898e6ab 100644 --- a/src/wikiget/dl.py +++ b/src/wikiget/dl.py @@ -50,6 +50,8 @@ def prep_download(dl: str, args: Namespace) -> File: def process_download(args: Namespace) -> int: + exit_code = 0 + if args.batch: # batch download mode errors = batch_download(args) @@ -59,25 +61,24 @@ def process_download(args: Namespace) -> int: logger.warning( f"{errors} problem{'s'[:errors^1]} encountered during batch processing" ) - return 1 # completed with errors - return 0 + exit_code = 1 # completed with errors else: # single download mode try: file = prep_download(args.FILE, args) except ParseError as e: logger.error(e) - return 1 + exit_code = 1 except FileExistsError as e: logger.warning(e) - return 1 + exit_code = 1 except (ConnectionError, HTTPError, InvalidResponse, LoginError, APIError): - return 1 - - errors = download(file, args) - if errors: - return 1 # completed with errors - return 0 + exit_code = 1 + else: + errors = download(file, args) + if errors: + exit_code = 1 # completed with errors + return exit_code def batch_download(args: Namespace) -> int: |
