mirror of
https://github.com/koreader/koreader.git
synced 2025-08-10 00:52:38 +00:00
Use fsync() for more robust setting files saving
Bump base for util.fsyncOpenedFile() and util.fsyncDirectory(). Use these to force flush to storage device when saving luasetting, docsetting, and history.lua. Also dont rotate them to .old until they are at least 60 seconds old. Also make auto_save_paging_count count right. Also bump crengine: open (as text) small or empty files
This commit is contained in:
@@ -100,6 +100,12 @@ describe("docsettings module", function()
|
||||
d:flush()
|
||||
-- metadata.pdf.lua should be generated.
|
||||
assert.Equals("file", lfs.attributes(d.sidecar_file, "mode"))
|
||||
d:flush()
|
||||
-- metadata.pdf.lua.old should not yet be generated.
|
||||
assert.are.not_equal("file", lfs.attributes(d.sidecar_file .. ".old", "mode"))
|
||||
-- make metadata.pdf.lua older to bypass 60s age needed for .old rotation
|
||||
local minutes_ago = os.time() - 120
|
||||
lfs.touch(d.sidecar_file, minutes_ago)
|
||||
d:close()
|
||||
-- metadata.pdf.lua and metadata.pdf.lua.old should be generated.
|
||||
assert.Equals("file", lfs.attributes(d.sidecar_file, "mode"))
|
||||
@@ -152,6 +158,9 @@ describe("docsettings module", function()
|
||||
d:flush()
|
||||
-- metadata.pdf.lua should be generated.
|
||||
assert.Equals("file", lfs.attributes(d.sidecar_file, "mode"))
|
||||
-- make metadata.pdf.lua older to bypass 60s age needed for .old rotation
|
||||
local minutes_ago = os.time() - 120
|
||||
lfs.touch(d.sidecar_file, minutes_ago)
|
||||
d:close()
|
||||
-- metadata.pdf.lua and metadata.pdf.lua.old should be generated.
|
||||
assert.Equals("file", lfs.attributes(d.sidecar_file, "mode"))
|
||||
@@ -182,6 +191,9 @@ describe("docsettings module", function()
|
||||
d:flush()
|
||||
-- metadata.pdf.lua should be generated.
|
||||
assert.Equals("file", lfs.attributes(d.sidecar_file, "mode"))
|
||||
-- make metadata.pdf.lua older to bypass 60s age needed for .old rotation
|
||||
local minutes_ago = os.time() - 120
|
||||
lfs.touch(d.sidecar_file, minutes_ago)
|
||||
d:close()
|
||||
-- metadata.pdf.lua and metadata.pdf.lua.old should be generated.
|
||||
assert.Equals("file", lfs.attributes(d.sidecar_file, "mode"))
|
||||
|
||||
Reference in New Issue
Block a user