@@ -111,7 +111,7 @@ protected JSONObject generateJsonDiff(JSONObject cur, JSONObject changedTo, JSON
111
111
}
112
112
}
113
113
114
- protected UserState getToSyncUserState () {
114
+ protected synchronized UserState getToSyncUserState () {
115
115
if (toSyncUserState == null )
116
116
toSyncUserState = newUserState ("TOSYNC_STATE" , true );
117
117
@@ -122,8 +122,7 @@ void initUserState() {
122
122
if (currentUserState == null )
123
123
currentUserState = newUserState ("CURRENT_STATE" , true );
124
124
125
- if (toSyncUserState == null )
126
- toSyncUserState = newUserState ("TOSYNC_STATE" , true );
125
+ getToSyncUserState ();
127
126
}
128
127
129
128
abstract protected UserState newUserState (String inPersistKey , boolean load );
@@ -151,7 +150,7 @@ private boolean isSessionCall() {
151
150
}
152
151
153
152
private boolean syncEmailLogout () {
154
- return toSyncUserState .dependValues .optBoolean ("logoutEmail" , false );
153
+ return getToSyncUserState () .dependValues .optBoolean ("logoutEmail" , false );
155
154
}
156
155
157
156
synchronized void syncUserState (boolean fromSyncService ) {
@@ -171,14 +170,14 @@ private void internalSyncUserState(boolean fromSyncService) {
171
170
final boolean isSessionCall = isSessionCall ();
172
171
JSONObject jsonBody , dependDiff ;
173
172
synchronized (syncLock ) {
174
- jsonBody = currentUserState .generateJsonDiff (toSyncUserState , isSessionCall );
175
- dependDiff = generateJsonDiff (currentUserState .dependValues , toSyncUserState .dependValues , null , null );
173
+ jsonBody = currentUserState .generateJsonDiff (getToSyncUserState () , isSessionCall );
174
+ dependDiff = generateJsonDiff (currentUserState .dependValues , getToSyncUserState () .dependValues , null , null );
176
175
177
176
if (jsonBody == null ) {
178
177
currentUserState .persistStateAfterSync (dependDiff , null );
179
178
return ;
180
179
}
181
- toSyncUserState .persistState ();
180
+ getToSyncUserState () .persistState ();
182
181
}
183
182
184
183
if (!isSessionCall || fromSyncService )
@@ -228,7 +227,7 @@ void onSuccess(String response) {
228
227
}
229
228
230
229
private void logoutEmailSyncSuccess () {
231
- toSyncUserState .dependValues .remove ("logoutEmail" );
230
+ getToSyncUserState () .dependValues .remove ("logoutEmail" );
232
231
toSyncUserState .dependValues .remove ("email_auth_hash" );
233
232
toSyncUserState .syncValues .remove ("parent_player_id" );
234
233
toSyncUserState .persistState ();
@@ -326,7 +325,7 @@ private void handleNetworkFailure() {
326
325
if (jsonBody != null )
327
326
fireEventsForUpdateFailure (jsonBody );
328
327
329
- if (toSyncUserState .dependValues .optBoolean ("logoutEmail" , false ))
328
+ if (getToSyncUserState () .dependValues .optBoolean ("logoutEmail" , false ))
330
329
OneSignal .handleFailedEmailLogout ();
331
330
}
332
331
0 commit comments