From 4a0db45362959bf8ae277e4db7ef2256d5c4f036 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Thu, 25 May 2017 20:05:12 +0530 Subject: [PATCH] Fix #1693496 [UnicodeDecodeError - cant' change title of a PDF file](https://bugs.launchpad.net/calibre/+bug/1693496) --- src/calibre/gui2/library/models.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/calibre/gui2/library/models.py b/src/calibre/gui2/library/models.py index ca84833f03..a79cf47a15 100644 --- a/src/calibre/gui2/library/models.py +++ b/src/calibre/gui2/library/models.py @@ -12,7 +12,7 @@ from itertools import groupby from PyQt5.Qt import (QAbstractTableModel, Qt, pyqtSignal, QIcon, QImage, QModelIndex, QDateTime, QColor, QPixmap, QPainter, QApplication) -from calibre import fit_image +from calibre import fit_image, force_unicode from calibre.gui2 import error_dialog from calibre.utils.search_query_parser import ParseException from calibre.ebooks.metadata import fmt_sidx, authors_to_string, string_to_authors @@ -1094,11 +1094,11 @@ class BooksModel(QAbstractTableModel): # {{{ import traceback if getattr(err, 'errno', None) == errno.EACCES: # Permission denied fname = getattr(err, 'filename', None) - p = 'Locked file: %s\n\n'%fname if fname else '' + p = 'Locked file: %s\n\n'%force_unicode(fname if fname else '') error_dialog(get_gui(), _('Permission denied'), _('Could not change the on disk location of this' ' book. Is it open in another program?'), - det_msg=p+traceback.format_exc(), show=True) + det_msg=p+force_unicode(traceback.format_exc()), show=True) return False error_dialog(get_gui(), _('Failed to set data'), _('Could not set data, click Show Details to see why.'),