Ensure legacy users with authData are not locked out (#4898)

* Adds fix for issue, ensuring legacy users with no ACL are properly handled

* Runs tests only on mongo
This commit is contained in:
Florent Vilmart
2018-07-18 14:42:50 +00:00
committed by GitHub
parent b22947d4ec
commit efb6c63a95
3 changed files with 47 additions and 5 deletions

View File

@@ -427,7 +427,7 @@ class DatabaseController {
}
});
for (const updateOperation in update) {
if (Object.keys(updateOperation).some(innerKey => innerKey.includes('$') || innerKey.includes('.'))) {
if (update[updateOperation] && typeof update[updateOperation] === 'object' && Object.keys(update[updateOperation]).some(innerKey => innerKey.includes('$') || innerKey.includes('.'))) {
throw new Parse.Error(Parse.Error.INVALID_NESTED_KEY, "Nested keys should not contain the '$' or '.' characters");
}
}
@@ -660,7 +660,7 @@ class DatabaseController {
* @param {boolean} fast set to true if it's ok to just delete rows and not indexes
* @returns {Promise<void>} when the deletions completes
*/
deleteEverything(fast: boolean = false): Promise<void> {
deleteEverything(fast: boolean = false): Promise<any> {
this.schemaPromise = null;
return Promise.all([
this.adapter.deleteAllClasses(fast),