Update for strange windows users on a network, and more xml verification fixes

This commit is contained in:
Apprentice Harper 2016-10-20 07:12:37 +01:00
parent ca59704dc4
commit 46ce2ce0ea
4 changed files with 19 additions and 3 deletions

Binary file not shown.

View File

@ -19,7 +19,7 @@ except NameError:
PLUGIN_NAME = 'Obok DeDRM' PLUGIN_NAME = 'Obok DeDRM'
PLUGIN_SAFE_NAME = PLUGIN_NAME.strip().lower().replace(' ', '_') PLUGIN_SAFE_NAME = PLUGIN_NAME.strip().lower().replace(' ', '_')
PLUGIN_DESCRIPTION = _('Removes DRM from Kobo kepubs and adds them to the library.') PLUGIN_DESCRIPTION = _('Removes DRM from Kobo kepubs and adds them to the library.')
PLUGIN_VERSION_TUPLE = (6, 5, 2) PLUGIN_VERSION_TUPLE = (6, 5, 3)
PLUGIN_VERSION = '.'.join([str(x) for x in PLUGIN_VERSION_TUPLE]) PLUGIN_VERSION = '.'.join([str(x) for x in PLUGIN_VERSION_TUPLE])
HELPFILE_NAME = PLUGIN_SAFE_NAME + '_Help.htm' HELPFILE_NAME = PLUGIN_SAFE_NAME + '_Help.htm'
PLUGIN_AUTHORS = 'Anon' PLUGIN_AUTHORS = 'Anon'

View File

@ -1,6 +1,9 @@
#!/usr/bin/env python #!/usr/bin/env python
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Version 3.2.3 October 2016
# Fix for windows network user and more xml fixes
#
# Version 3.2.2 October 2016 # Version 3.2.2 October 2016
# Change to the way the new database version is handled. # Change to the way the new database version is handled.
# #
@ -142,7 +145,7 @@
# #
"""Manage all Kobo books, either encrypted or DRM-free.""" """Manage all Kobo books, either encrypted or DRM-free."""
__version__ = '3.2.2' __version__ = '3.2.3'
__about__ = u"Obok v{0}\nCopyright © 2012-2016 Physisticated et al.".format(__version__) __about__ = u"Obok v{0}\nCopyright © 2012-2016 Physisticated et al.".format(__version__)
import sys import sys
@ -428,7 +431,8 @@ class KoboLibrary(object):
macaddrs = [] macaddrs = []
if sys.platform.startswith('win'): if sys.platform.startswith('win'):
c = re.compile('\s(' + '[0-9a-f]{2}-' * 5 + '[0-9a-f]{2})(\s|$)', re.IGNORECASE) c = re.compile('\s(' + '[0-9a-f]{2}-' * 5 + '[0-9a-f]{2})(\s|$)', re.IGNORECASE)
for line in os.popen('ipconfig /all'): (p_in, p_out, p_err) = os.popen3('ipconfig /all')
for line in p_out:
m = c.search(line) m = c.search(line)
if m: if m:
macaddrs.append(re.sub("-", ":", m.group(1)).upper()) macaddrs.append(re.sub("-", ":", m.group(1)).upper())
@ -587,6 +591,15 @@ class KoboFile(object):
elif contents[:14]=="\xff\xfe<\x00?\x00x\x00m\x00l\x00": elif contents[:14]=="\xff\xfe<\x00?\x00x\x00m\x00l\x00":
# utf-16LE # utf-16LE
return True return True
elif contents[:9]=="<!DOCTYPE" or contents[:12]=="\xef\xbb\xbf<!DOCTYPE":
# utf-8 of weird <!DOCTYPE start
return True
elif contents[:22]=="\xfe\xff\x00<\x00!\x00D\x00O\x00C\x00T\x00Y\x00P\x00E":
# utf-16BE of weird <!DOCTYPE start
return True
elif contents[:22]=="\xff\xfe<\x00!\x00D\x00O\x00C\x00T\x00Y\x00P\x00E\x00":
# utf-16LE of weird <!DOCTYPE start
return True
else: else:
print u"Bad XML: {0}".format(contents[:8]) print u"Bad XML: {0}".format(contents[:8])
raise ValueError raise ValueError

View File

@ -1,6 +1,9 @@
#!/usr/bin/env python #!/usr/bin/env python
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
# Version 3.2.3 October 2016
# Fix for windows network user and more xml fixes
#
# Version 3.2.2 October 2016 # Version 3.2.2 October 2016
# Change to the way the new database version is handled. # Change to the way the new database version is handled.
# #