diff --git a/resources/images/blank-1x1.png b/resources/images/blank-1x1.png new file mode 100644 index 0000000000..91a99b94e2 Binary files /dev/null and b/resources/images/blank-1x1.png differ diff --git a/src/calibre/gui2/comments_editor.py b/src/calibre/gui2/comments_editor.py index c1a2f48881..34db3b65a4 100644 --- a/src/calibre/gui2/comments_editor.py +++ b/src/calibre/gui2/comments_editor.py @@ -28,7 +28,7 @@ from calibre.gui2.widgets import LineEditECM from calibre.gui2.widgets2 import to_plain_text from calibre.utils.config import tweaks from calibre.utils.imghdr import what -from polyglot.builtins import filter, iteritems, itervalues, unicode_type +from polyglot.builtins import filter, iteritems, itervalues, unicode_type, as_bytes # Cleanup Qt markup {{{ @@ -764,7 +764,7 @@ class EditorWidget(QTextEdit, LineEditECM): # {{{ with lopen(path, 'rb') as f: data = f.read() except EnvironmentError: - pass + return QByteArray(I('blank-1x1.png', data=True)) else: return QByteArray(data) diff --git a/src/calibre/gui2/widgets2.py b/src/calibre/gui2/widgets2.py index 97f2d60e73..5aa6c9df59 100644 --- a/src/calibre/gui2/widgets2.py +++ b/src/calibre/gui2/widgets2.py @@ -11,7 +11,7 @@ from PyQt5.Qt import ( QDialogButtonBox, QFont, QFontInfo, QFontMetrics, QIcon, QKeySequence, QLabel, QLayout, QPalette, QPixmap, QPoint, QPushButton, QRect, QScrollArea, QSize, QSizePolicy, QStyle, QStyledItemDelegate, Qt, QTabWidget, QTextBrowser, - QToolButton, QUndoCommand, QUndoStack, QWidget, pyqtSignal + QToolButton, QUndoCommand, QUndoStack, QWidget, pyqtSignal, QByteArray ) from calibre.ebooks.metadata import rating_to_stars @@ -482,6 +482,18 @@ class HTMLDisplay(QTextBrowser): return self.anchor_clicked.emit(qurl) + def loadResource(self, rtype, qurl): + if qurl.isLocalFile(): + path = qurl.toLocalFile() + try: + with lopen(path, 'rb') as f: + data = f.read() + except EnvironmentError: + return QByteArray(I('blank-1x1.png', data=True)) + else: + return QByteArray(data) + else: + QTextBrowser.loadResource(self, rtype, qurl) class ScrollingTabWidget(QTabWidget):