diff --git a/src/calibre/library/cli.py b/src/calibre/library/cli.py index 75f72297a4..1ac82b2edb 100644 --- a/src/calibre/library/cli.py +++ b/src/calibre/library/cli.py @@ -126,7 +126,8 @@ def do_list(db, fields, sort_by, ascending, search_text, line_width, separator, fields = ['id'] + fields if output_format == 'text': for f in data: - f['formats'] = u'[%s]'%u','.join(f['formats']) + fmts = [x for x in f['formats'] if x is not None] + f['formats'] = u'[%s]'%u','.join(fmts) widths = list(map(lambda x : 0, fields)) for record in data: for f in record.keys(): diff --git a/src/calibre/library/database2.py b/src/calibre/library/database2.py index 194933bb3a..18765e3e3c 100644 --- a/src/calibre/library/database2.py +++ b/src/calibre/library/database2.py @@ -1525,6 +1525,8 @@ class LibraryDatabase2(LibraryDatabase): if formats: for fmt in formats.split(','): path = self.format_abspath(x['id'], fmt, index_is_id=True) + if path is None: + continue if prefix != self.library_path: path = os.path.relpath(path, self.library_path) path = os.path.join(prefix, path)