diff --git a/frontend/apps/reader/modules/readerlink.lua b/frontend/apps/reader/modules/readerlink.lua index 0afc15d75..c55344d15 100644 --- a/frontend/apps/reader/modules/readerlink.lua +++ b/frontend/apps/reader/modules/readerlink.lua @@ -641,13 +641,14 @@ function ReaderLink:onGoToExternalLink(link_url) -- wikipedia page saved as epub, full of wikipedia links, it's -- too easy to click on links when wanting to change page...) -- But first check if this wikipedia article has been saved as EPUB - local epub_filename = util.getSafeFilename(wiki_page:gsub("_", " ")) .. "."..string.upper(wiki_lang)..".epub" + local epub_filename = wiki_page .. "."..string.upper(wiki_lang)..".epub" local epub_fullpath -- either in current book directory local last_file = G_reader_settings:readSetting("lastfile") if last_file then local current_book_dir = last_file:match("(.*)/") - local epub_path = current_book_dir .. "/" .. epub_filename + local safe_filename = util.getSafeFilename(epub_filename, current_book_dir):gsub("_", " ") + local epub_path = current_book_dir .. "/" .. safe_filename if util.pathExists(epub_path) then epub_fullpath = epub_path end @@ -658,7 +659,8 @@ function ReaderLink:onGoToExternalLink(link_url) if not dir then dir = G_reader_settings:readSetting("home_dir") end if not dir then dir = require("apps/filemanager/filemanagerutil").getDefaultDir() end if dir then - local epub_path = dir .. "/" .. epub_filename + local safe_filename = util.getSafeFilename(epub_filename, dir):gsub("_", " ") + local epub_path = dir .. "/" .. safe_filename if util.pathExists(epub_path) then epub_fullpath = epub_path end diff --git a/frontend/ui/widget/dictquicklookup.lua b/frontend/ui/widget/dictquicklookup.lua index c0a32c1aa..ebcefbd48 100644 --- a/frontend/ui/widget/dictquicklookup.lua +++ b/frontend/ui/widget/dictquicklookup.lua @@ -355,10 +355,6 @@ function DictQuickLookup:update() -- if forced_lang was specified, it may not be in our wiki_languages, -- but ReaderWikipedia will have put it in result.lang local lang = self.lang or self.wiki_languages_copy[1] - -- Just to be safe (none of the invalid chars, except ':' for uninteresting - -- Portal: or File: wikipedia pages, should be in lookup_word) - local cleaned_lookupword = util.getSafeFilename(self.lookupword:gsub("_", " ")) - local filename = cleaned_lookupword .. "."..string.upper(lang)..".epub" -- Find a directory to save file into local dir if G_reader_settings:isTrue("wikipedia_save_in_book_dir") and not self:isDocless() then @@ -376,6 +372,10 @@ function DictQuickLookup:update() }) return end + -- Just to be safe (none of the invalid chars, except ':' for uninteresting + -- Portal: or File: wikipedia pages, should be in lookupword) + local filename = self.lookupword .. "."..string.upper(lang)..".epub" + filename = util.getSafeFilename(filename, dir):gsub("_", " ") local epub_path = dir .. "/" .. filename UIManager:show(ConfirmBox:new{ text = T(_("Save as %1?"), BD.filename(filename)),