Skip to content

Commit 390f5e6

Browse files
authored
Ensure the user has an objectId before resolving ACLs (#1268)
1 parent ba0f15a commit 390f5e6

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

Parse/Parse/PFACL.m

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -101,9 +101,12 @@ - (instancetype)createUnsharedCopy {
101101
return newACL;
102102
}
103103

104-
- (void)resolveUser:(PFUser *)user {
104+
- (BOOL)resolveUser:(PFUser *)user {
105105
if (user != unresolvedUser) {
106-
return;
106+
return YES;
107+
}
108+
if (!user || !user.objectId) {
109+
return NO;
107110
}
108111
NSMutableDictionary *unresolvedPermissions = self.state.permissions[PFACLUnresolvedKey_];
109112
if (unresolvedPermissions) {
@@ -113,6 +116,7 @@ - (void)resolveUser:(PFUser *)user {
113116
}];
114117
}
115118
unresolvedUser = nil;
119+
return YES;
116120
}
117121

118122
- (BOOL)hasUnresolvedUser {
@@ -259,8 +263,9 @@ - (void)prepareUnresolvedUser:(PFUser *)user {
259263
__weak __block void (^weakCallback)(id result, NSError *error) = nil;
260264
__block void (^callback)(id result, NSError *error) = [^(id result, NSError *error) {
261265
@strongify(self);
262-
[self resolveUser:result];
263-
[result unregisterSaveListener:weakCallback];
266+
if ([self resolveUser:result]) {
267+
[result unregisterSaveListener:weakCallback];
268+
}
264269
} copy];
265270
weakCallback = callback;
266271
[user registerSaveListener:callback];

0 commit comments

Comments
 (0)