mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Handle undecodable bytes in text columns
This commit is contained in:
parent
d1609037ab
commit
4f5764b1a8
@ -52,10 +52,16 @@ class Table(object):
|
|||||||
self.name, self.metadata = name, metadata
|
self.name, self.metadata = name, metadata
|
||||||
self.sort_alpha = metadata.get('is_multiple', False) and metadata.get('display', {}).get('sort_alpha', False)
|
self.sort_alpha = metadata.get('is_multiple', False) and metadata.get('display', {}).get('sort_alpha', False)
|
||||||
|
|
||||||
|
text = lambda x:x.decode('utf-8', 'replace') if isinstance(x, bytes) else x
|
||||||
|
|
||||||
# self.unserialize() maps values from the db to python objects
|
# self.unserialize() maps values from the db to python objects
|
||||||
self.unserialize = \
|
self.unserialize = \
|
||||||
{
|
{
|
||||||
'datetime': _c_convert_timestamp,
|
'datetime': _c_convert_timestamp,
|
||||||
|
'text': text,
|
||||||
|
'comments': text,
|
||||||
|
'series': text,
|
||||||
|
'enumeration': text,
|
||||||
'bool': bool
|
'bool': bool
|
||||||
}.get(
|
}.get(
|
||||||
metadata['datatype'], lambda x: x)
|
metadata['datatype'], lambda x: x)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user