diff --git a/cps/comic.py b/cps/comic.py index 271b1b456..f0a81b4a0 100644 --- a/cps/comic.py +++ b/cps/comic.py @@ -65,7 +65,7 @@ def _extract_cover_from_archive(original_file_extension, tmp_file_name, rar_exec cover_data = extension = None if original_file_extension.upper() == '.CBZ': cf = zipfile.ZipFile(tmp_file_name) - for name in cf.namelist(): + for name in sorted(cf.namelist()): ext = os.path.splitext(name) if len(ext) > 1: extension = ext[1].lower() @@ -74,7 +74,7 @@ def _extract_cover_from_archive(original_file_extension, tmp_file_name, rar_exec break elif original_file_extension.upper() == '.CBT': cf = tarfile.TarFile(tmp_file_name) - for name in cf.getnames(): + for name in sorted(cf.getnames()): ext = os.path.splitext(name) if len(ext) > 1: extension = ext[1].lower() @@ -85,7 +85,7 @@ def _extract_cover_from_archive(original_file_extension, tmp_file_name, rar_exec try: rarfile.UNRAR_TOOL = rar_executable cf = rarfile.RarFile(tmp_file_name) - for name in cf.namelist(): + for name in sorted(cf.namelist()): ext = os.path.splitext(name) if len(ext) > 1: extension = ext[1].lower() @@ -96,7 +96,7 @@ def _extract_cover_from_archive(original_file_extension, tmp_file_name, rar_exec log.error('Rarfile failed with error: {}'.format(ex)) elif original_file_extension.upper() == '.CB7' and use_7zip: cf = py7zr.SevenZipFile(tmp_file_name) - for name in cf.getnames(): + for name in sorted(cf.getnames()): ext = os.path.splitext(name) if len(ext) > 1: extension = ext[1].lower()