Update lzma import to include calibre >= 4.6.0

This commit is contained in:
Carson Gaspar 2020-01-04 05:20:16 -08:00
parent b71ed3887e
commit fc6f830088
1 changed files with 12 additions and 7 deletions

View File

@ -21,19 +21,24 @@ from Crypto.Cipher import AES
from Crypto.Util.py3compat import bchr, bord
try:
# lzma library from calibre 2.35.0 or later
import lzma.lzma1 as calibre_lzma
# lzma library from calibre 4.6.0 or later
import calibre_lzma.lzma1 as calibre_lzma
except ImportError:
calibre_lzma = None
# lzma library from calibre 2.35.0 or later
try:
import lzma
import lzma.lzma1 as calibre_lzma
except ImportError:
# Need pip backports.lzma on Python <3.3
calibre_lzma = None
try:
from backports import lzma
import lzma
except ImportError:
# Windows-friendly choice: pylzma wheels
import pylzma as lzma
# Need pip backports.lzma on Python <3.3
try:
from backports import lzma
except ImportError:
# Windows-friendly choice: pylzma wheels
import pylzma as lzma
TID_NULL = 0