mirror of
https://github.com/koreader/koreader.git
synced 2025-08-10 00:52:38 +00:00
DocumentRegistry: Downgrade refcount warnings to debug logging.
It can happen in perfectly sane contexts. CReDocument: Don't destroy internal engine data when Document just decreased the refcount (as opposed to actually tore down the document userdata if it were the last ref). PdfDocument: Only write edited documents if the Doc instance was torn down. PicDocument: Silence some DocumentRegistry related warnings
This commit is contained in:
@@ -261,9 +261,16 @@ function PdfDocument:writeDocument()
|
||||
end
|
||||
|
||||
function PdfDocument:close()
|
||||
if self.is_edited then
|
||||
self:writeDocument()
|
||||
-- NOTE: We can't just rely on Document:close's return code for that, as we need self._document
|
||||
-- in :writeDocument, and it would have been destroyed.
|
||||
local DocumentRegistry = require("document/documentregistry")
|
||||
if DocumentRegistry:getReferenceCount(self.file) == 1 then
|
||||
-- We're the final reference to this Document instance.
|
||||
if self.is_edited then
|
||||
self:writeDocument()
|
||||
end
|
||||
end
|
||||
|
||||
Document.close(self)
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user