File tree Expand file tree Collapse file tree 4 files changed +6
-5
lines changed Expand file tree Collapse file tree 4 files changed +6
-5
lines changed Original file line number Diff line number Diff line change @@ -121,7 +121,6 @@ const DefaultController = {
121
121
if ( typeof res === 'object' && Object . keys ( res ) . length > 0 && ! res . hasOwnProperty ( 'result' ) ) {
122
122
throw new ParseError ( ParseError . INVALID_JSON , 'The server returned an invalid response.' ) ;
123
123
}
124
- ParseObject . _clearAllState ( ) ;
125
124
const decoded = decode ( res ) ;
126
125
if ( decoded && decoded . hasOwnProperty ( 'result' ) ) {
127
126
return Promise . resolve ( decoded . result ) ;
Original file line number Diff line number Diff line change @@ -347,10 +347,13 @@ class ParseObject {
347
347
} ;
348
348
}
349
349
350
- _finishFetch ( serverData : AttributeMap ) {
350
+ _finishFetch ( serverData : AttributeMap , override ? : boolean ) {
351
351
if ( ! this . id && serverData . objectId ) {
352
352
this . id = serverData . objectId ;
353
353
}
354
+ if ( override ) {
355
+ this . _clearServerData ( ) ;
356
+ }
354
357
const stateController = CoreManager . getObjectStateController ( ) ;
355
358
stateController . initializeState ( this . _getStateIdentifier ( ) ) ;
356
359
const decoded = { } ;
Original file line number Diff line number Diff line change @@ -1088,8 +1088,7 @@ const DefaultController = {
1088
1088
stateController . setPendingOp ( user . _getStateIdentifier ( ) , 'username' , undefined ) ;
1089
1089
stateController . setPendingOp ( user . _getStateIdentifier ( ) , 'password' , undefined ) ;
1090
1090
response . password = undefined ;
1091
- user . _clearServerData ( ) ;
1092
- user . _finishFetch ( response ) ;
1091
+ user . _finishFetch ( response , true ) ;
1093
1092
if ( ! canUseCurrentUser ) {
1094
1093
// We can't set the current user, so just return the one we logged in
1095
1094
return Promise . resolve ( user ) ;
Original file line number Diff line number Diff line change @@ -34,7 +34,7 @@ export default function decode(value: any): any {
34
34
return ParseObject . fromJSON ( value ) ;
35
35
}
36
36
if ( value . __type === 'Object' && value . className ) {
37
- return ParseObject . fromJSON ( value ) ;
37
+ return ParseObject . fromJSON ( value , true ) ;
38
38
}
39
39
if ( value . __type === 'Relation' ) {
40
40
// The parent and key fields will be populated by the parent
You can’t perform that action at this time.
0 commit comments