diff --git a/frontend/device/generic/device.lua b/frontend/device/generic/device.lua index 1b37f2ec1..6736eeb8f 100644 --- a/frontend/device/generic/device.lua +++ b/frontend/device/generic/device.lua @@ -545,8 +545,13 @@ function Device:exit() -- Restore initial HW inversion state self.screen:setHWNightmode(self.orig_hw_nightmode) - -- I/O teardown + -- Tear down the fb backend self.screen:close() + + -- Flush settings to disk + G_reader_settings:close() + + -- I/O teardown require("ffi/input"):closeAll() end diff --git a/reader.lua b/reader.lua index ad369f428..47b7ed969 100755 --- a/reader.lua +++ b/reader.lua @@ -292,12 +292,9 @@ end -- Exit local function exitReader() - -- Shutdown hardware abstraction + -- Shutdown hardware abstraction (it'll also flush G_reader_settings to disk) Device:exit() - -- Flush settings to disk - G_reader_settings:close() - if Profiler then Profiler.stop() end if type(exit_code) == "number" then