X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=altoslib%2FAltosPreferences.java;h=fb3026a4c0a55b2b8d5abe1aca145826fa1d4980;hb=4c20fdfa543059739b756171b991d430789cded1;hp=cc340d0342ae8d1e9d8fd910a779dcc7f2876784;hpb=ec20e2f72460010c4f59e6d59775671260e01026;p=fw%2Faltos diff --git a/altoslib/AltosPreferences.java b/altoslib/AltosPreferences.java index cc340d03..fb3026a4 100644 --- a/altoslib/AltosPreferences.java +++ b/altoslib/AltosPreferences.java @@ -350,12 +350,12 @@ public class AltosPreferences { } } - public static void set_state(int serial, AltosState state, AltosListenerState listener_state) { + public static void set_state(AltosState state) { synchronized(backend) { - backend.putSerializable(String.format(statePreferenceFormat, serial), - new AltosSavedState(state, listener_state)); - backend.putInt(statePreferenceLatest, serial); + backend.putSerializable(String.format(statePreferenceFormat, state.serial), state); + backend.putInt(statePreferenceLatest, state.serial); + flush_preferences(); } } @@ -389,9 +389,13 @@ public class AltosPreferences { return latest; } - public static AltosSavedState state(int serial) { + public static AltosState state(int serial) { synchronized(backend) { - return (AltosSavedState) backend.getSerializable(String.format(statePreferenceFormat, serial), null); + try { + return (AltosState) backend.getSerializable(String.format(statePreferenceFormat, serial), null); + } catch (Exception e) { + return null; + } } }