From 07f4e83dedbf0547ec8cdb1879c9a93268d09107 Mon Sep 17 00:00:00 2001 From: orwell96 Date: Mon, 3 May 2021 21:47:53 +0200 Subject: Strip trailing \r from lines (possibly fixes windows migration) --- serialize.lua | 2 ++ 1 file changed, 2 insertions(+) diff --git a/serialize.lua b/serialize.lua index 4b1ebb7..f1175ef 100644 --- a/serialize.lua +++ b/serialize.lua @@ -117,6 +117,8 @@ function read_table(t, file) file:close() error("Unexpected EOF or read error!") end + -- possibly windows fix: strip trailing \r's from line + line = string.gsub(line, "\r$", "") if line=="E" then -- done with this table -- cgit v1.2.3 From 28bc9ef07f0a8b809d17e949c9a9fb223bfc3e65 Mon Sep 17 00:00:00 2001 From: orwell96 Date: Mon, 3 May 2021 21:58:50 +0200 Subject: Make strict loading the default --- atomic.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/atomic.lua b/atomic.lua index 4a48c27..886b6a4 100644 --- a/atomic.lua +++ b/atomic.lua @@ -107,7 +107,7 @@ function serialize_lib.load_atomic(filename, callback) end end - if minetest.settings:get_bool("serialize_lib_strict_loading") then + if minetest.settings:get_bool("serialize_lib_strict_loading", true) then serialize_lib.save_lock = true error("Loading data from file '"..filename.."' failed:\n" ..ret.."\nDisable Strict Loading to ignore.") -- cgit v1.2.3 From d4593491efbcab47efd918d7918b97b4621828b3 Mon Sep 17 00:00:00 2001 From: orwell96 Date: Mon, 3 May 2021 22:05:30 +0200 Subject: Strip trailing \r's also for first and last line --- serialize.lua | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/serialize.lua b/serialize.lua index f1175ef..78ddcfd 100644 --- a/serialize.lua +++ b/serialize.lua @@ -205,6 +205,8 @@ end -- config: see above local function read_from_fd(file) local first_line = file:read("*line") + -- possibly windows fix: strip trailing \r's from line + first_line = string.gsub(first_line, "\r$", "") if not string.match(first_line, "LUA_SER v=[12]") then file:close() error("Expected header, got '"..first_line.."' instead!") @@ -212,6 +214,8 @@ local function read_from_fd(file) local t = {} read_table(t, file) local last_line = file:read("*line") + -- possibly windows fix: strip trailing \r's from line + last_line = string.gsub(last_line, "\r$", "") file:close() if last_line ~= "END_SER" then error("Missing END_SER, got '"..last_line.."' instead!") -- cgit v1.2.3