about summary refs log tree commit diff stats
path: root/Archipelago/client.gd
diff options
context:
space:
mode:
authorStar Rauchenberger <fefferburbia@gmail.com>2024-05-29 13:34:00 -0400
committerStar Rauchenberger <fefferburbia@gmail.com>2024-05-29 13:34:00 -0400
commit2b0fcdde3144213676324163d721150a8641d610 (patch)
treed2a342d001a9d279538ef89e06cc2e5c0169acff /Archipelago/client.gd
parent6c3cb6286ae94bc41d07d4886e93b2e7d2489a28 (diff)
downloadlingo-archipelago-2b0fcdde3144213676324163d721150a8641d610.tar.gz
lingo-archipelago-2b0fcdde3144213676324163d721150a8641d610.tar.bz2
lingo-archipelago-2b0fcdde3144213676324163d721150a8641d610.zip
Gracefully handle corrupted data files
Diffstat (limited to 'Archipelago/client.gd')
-rw-r--r--Archipelago/client.gd8
1 files changed, 8 insertions, 0 deletions
diff --git a/Archipelago/client.gd b/Archipelago/client.gd index e89c156..bc952b9 100644 --- a/Archipelago/client.gd +++ b/Archipelago/client.gd
@@ -133,6 +133,10 @@ func _init():
133 var data = file.get_var(true) 133 var data = file.get_var(true)
134 file.close() 134 file.close()
135 135
136 if typeof(data) != TYPE_ARRAY:
137 global._print("AP settings file is corrupted")
138 data = []
139
136 if data.size() > 0: 140 if data.size() > 0:
137 ap_server = data[0] 141 ap_server = data[0]
138 if data.size() > 1: 142 if data.size() > 1:
@@ -328,6 +332,10 @@ func _on_data():
328 var localdata = ap_file.get_var(true) 332 var localdata = ap_file.get_var(true)
329 ap_file.close() 333 ap_file.close()
330 334
335 if typeof(localdata) != TYPE_ARRAY:
336 global._print("AP localdata file is corrupted")
337 localdata = []
338
331 if localdata.size() > 0: 339 if localdata.size() > 0:
332 _last_new_item = localdata[0] 340 _last_new_item = localdata[0]
333 else: 341 else: