Skip to content

Commit b3c9b34

Browse files
committed
bugfix
1 parent e35b2f4 commit b3c9b34

File tree

2 files changed

+14
-7
lines changed

2 files changed

+14
-7
lines changed

build/scripts/io.js

Lines changed: 8 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/io.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -197,10 +197,10 @@ export class SettingsSerializer<T extends Serializable> extends Serializer<T> {
197197
this.write(object, new DataOutputStream(output));
198198
Core.settings.put(this.settingsKey, output.toByteArray());
199199
}
200-
readSettings():T {
201-
return this.read(new DataInputStream(new ByteArrayInputStream(
202-
Core.settings.getBytes(this.settingsKey)
203-
)));
200+
readSettings():T | null {
201+
const data = Core.settings.getBytes(this.settingsKey);
202+
if(data) return this.read(new DataInputStream(new ByteArrayInputStream(data)));
203+
else return null;
204204
}
205205
}
206206

@@ -222,7 +222,8 @@ export function serialize<T extends Serializable>(settingsKey: string, schema: (
222222
addInitializer(function(){
223223
const serializer = lazy(() => new SettingsSerializer<T>(settingsKey, schema()));
224224
FishEvents.on("loadData", () => {
225-
access.set(this, serializer().readSettings());
225+
const value = serializer().readSettings();
226+
if(value) access.set(this, value);
226227
});
227228
FishEvents.on("saveData", () => {
228229
serializer().writeSettings(access.get(this));

0 commit comments

Comments
 (0)