diff --git a/frontend/ui/reader/readerdictionary.lua b/frontend/ui/reader/readerdictionary.lua index 47eda1dfb..3f6f2ab7a 100644 --- a/frontend/ui/reader/readerdictionary.lua +++ b/frontend/ui/reader/readerdictionary.lua @@ -34,7 +34,7 @@ function ReaderDictionary:stardictLookup(word, box) end function ReaderDictionary:showDict(results, box) - if results and results[1] then + if results and results[1] and box then DEBUG("showing quick lookup dictionary window") local align = nil local region = Geom:new{x = 0, w = Screen:getWidth()} diff --git a/frontend/ui/reader/readerfooter.lua b/frontend/ui/reader/readerfooter.lua index 9ff00ddb8..7c078bbd1 100644 --- a/frontend/ui/reader/readerfooter.lua +++ b/frontend/ui/reader/readerfooter.lua @@ -77,6 +77,7 @@ function ReaderFooter:init() end function ReaderFooter:updateFooter() + if type(self.pageno) ~= "number" then return end self.progress_bar.percentage = self.pageno / self.pages if self.show_time then self.progress_text.text = os.date("%H:%M") diff --git a/frontend/ui/reader/readerlink.lua b/frontend/ui/reader/readerlink.lua index bcb7aa0a1..bf2ded913 100644 --- a/frontend/ui/reader/readerlink.lua +++ b/frontend/ui/reader/readerlink.lua @@ -53,9 +53,11 @@ end function ReaderLink:onTap(arg, ges) if self.ui.document.info.has_pages then local pos = self.view:screenToPageTransform(ges.pos) - local link = self.ui.document:getLinkFromPosition(pos.page, pos) - if link then - return self:onGotoLink(link) + if pos then + local link = self.ui.document:getLinkFromPosition(pos.page, pos) + if link then + return self:onGotoLink(link) + end end else local link = self.ui.document:getLinkFromPosition(ges.pos)