py3: Fix an error when downloading books via Get Books

Fixes #1862719 [TypeError: 'dict_keys' object does not support indexing](https://bugs.launchpad.net/calibre/+bug/1862719)
This commit is contained in:
Kovid Goyal 2020-02-11 10:16:29 +05:30
parent 449672bab1
commit ad22288784
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
2 changed files with 2 additions and 1 deletions

View File

@ -41,6 +41,7 @@ class ChooseFormatDialog(QDialog):
bb.accepted.connect(self.accept), bb.rejected.connect(self.reject) bb.accepted.connect(self.accept), bb.rejected.connect(self.reject)
h.addStretch(10), h.addWidget(self.buttonBox) h.addStretch(10), h.addWidget(self.buttonBox)
formats = list(formats)
for format in formats: for format in formats:
self.formats.addItem(QListWidgetItem(file_icon_provider().icon_from_ext(format.lower()), self.formats.addItem(QListWidgetItem(file_icon_provider().icon_from_ext(format.lower()),
format.upper())) format.upper()))

View File

@ -392,7 +392,7 @@ class SearchDialog(QDialog, Ui_Dialog):
self.open_store(result) self.open_store(result)
def download_book(self, result): def download_book(self, result):
d = ChooseFormatDialog(self, _('Choose format to download to your library.'), result.downloads.keys()) d = ChooseFormatDialog(self, _('Choose format to download to your library.'), list(result.downloads.keys()))
if d.exec_() == d.Accepted: if d.exec_() == d.Accepted:
ext = d.format() ext = d.format()
fname = result.title[:60] + '.' + ext.lower() fname = result.title[:60] + '.' + ext.lower()