mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Speed up the qhash implementation
This commit is contained in:
parent
c893f0de7e
commit
3ab5097788
@ -31,19 +31,19 @@ from calibre.utils.config_base import prefs
|
||||
EPUB_EXT = '.epub'
|
||||
|
||||
|
||||
# Implementation of QtQHash for strings. This doesn't seem to be in the Python implemention.
|
||||
def qhash (inputstr):
|
||||
instr = ""
|
||||
if isinstance (inputstr, str):
|
||||
# Implementation of QtQHash for strings. This doesn't seem to be in the Python implementation.
|
||||
def qhash(inputstr):
|
||||
instr = b""
|
||||
if isinstance(inputstr, bytes):
|
||||
instr = inputstr
|
||||
elif isinstance (inputstr, unicode):
|
||||
instr = inputstr.encode ("utf8")
|
||||
elif isinstance(inputstr, unicode):
|
||||
instr = inputstr.encode("utf8")
|
||||
else:
|
||||
return -1
|
||||
|
||||
h = 0x00000000
|
||||
for i in range (0, len (instr)):
|
||||
h = (h << 4) + ord(instr[i])
|
||||
for x in bytearray(instr):
|
||||
h = (h << 4) + x
|
||||
h ^= (h & 0xf0000000) >> 23
|
||||
h &= 0x0fffffff
|
||||
|
||||
@ -1251,7 +1251,7 @@ class KOBOTOUCH(KOBO):
|
||||
|
||||
max_supported_fwversion = (2,9,1)
|
||||
min_fwversion_images_on_sdcard = (2,4,1)
|
||||
min_fwversion_images_tree = (2,9,0) # Cover images stored in tree under .kobo-images
|
||||
min_fwversion_images_tree = (2,9,0) # Cover images stored in tree under .kobo-images
|
||||
|
||||
has_kepubs = True
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user