mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-07 18:24:30 -04:00
Handle presence of ascii control characters when saving history for line edits
This commit is contained in:
parent
27e39f6885
commit
db3bfa0f5f
@ -15,7 +15,7 @@ from PyQt5.Qt import (QIcon, QFont, QLabel, QListWidget, QAction,
|
|||||||
from calibre.gui2 import (error_dialog, pixmap_to_data, gprefs,
|
from calibre.gui2 import (error_dialog, pixmap_to_data, gprefs,
|
||||||
warning_dialog)
|
warning_dialog)
|
||||||
from calibre.gui2.filename_pattern_ui import Ui_Form
|
from calibre.gui2.filename_pattern_ui import Ui_Form
|
||||||
from calibre import fit_image, strftime
|
from calibre import fit_image, strftime, force_unicode
|
||||||
from calibre.ebooks import BOOK_EXTENSIONS
|
from calibre.ebooks import BOOK_EXTENSIONS
|
||||||
from calibre.utils.config import prefs, XMLConfig
|
from calibre.utils.config import prefs, XMLConfig
|
||||||
from calibre.gui2.progress_indicator import ProgressIndicator as _ProgressIndicator
|
from calibre.gui2.progress_indicator import ProgressIndicator as _ProgressIndicator
|
||||||
@ -674,7 +674,15 @@ class HistoryLineEdit(QComboBox): # {{{
|
|||||||
self.addItems(items)
|
self.addItems(items)
|
||||||
self.setEditText(ct)
|
self.setEditText(ct)
|
||||||
self.blockSignals(False)
|
self.blockSignals(False)
|
||||||
history.set(self.store_name, items)
|
try:
|
||||||
|
history.set(self.store_name, items)
|
||||||
|
except ValueError:
|
||||||
|
from calibre.utils.cleantext import clean_ascii_chars
|
||||||
|
items = [clean_ascii_chars(force_unicode(x)) for x in items]
|
||||||
|
try:
|
||||||
|
history.set(self.store_name, items)
|
||||||
|
except ValueError:
|
||||||
|
pass
|
||||||
|
|
||||||
def setText(self, t):
|
def setText(self, t):
|
||||||
self.setEditText(t)
|
self.setEditText(t)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user