diff --git a/apps/user_ldap/lib/Jobs/UpdateGroups.php b/apps/user_ldap/lib/Jobs/UpdateGroups.php index 7f68b65f61bb1..bc01a0f850567 100644 --- a/apps/user_ldap/lib/Jobs/UpdateGroups.php +++ b/apps/user_ldap/lib/Jobs/UpdateGroups.php @@ -46,6 +46,7 @@ use OCP\Group\Events\UserAddedEvent; use OCP\Group\Events\UserRemovedEvent; use OCP\ILogger; +use OCP\IUser; class UpdateGroups extends \OC\BackgroundJob\TimedJob { static private $groupsFromDB; @@ -115,7 +116,9 @@ static private function handleKnownGroups($groups) { $groupObject = $groupManager->get($group); foreach(array_diff($knownUsers, $actualUsers) as $removedUser) { $userObject = $userManager->get($removedUser); - $dispatcher->dispatchTyped(new UserRemovedEvent($groupObject, $userObject)); + if ($userObject instanceof IUser) { + $dispatcher->dispatchTyped(new UserRemovedEvent($groupObject, $userObject)); + } \OCP\Util::writeLog('user_ldap', 'bgJ "updateGroups" – "'.$removedUser.'" removed from "'.$group.'".', ILogger::INFO); @@ -123,7 +126,9 @@ static private function handleKnownGroups($groups) { } foreach(array_diff($actualUsers, $knownUsers) as $addedUser) { $userObject = $userManager->get($addedUser); - $dispatcher->dispatchTyped(new UserAddedEvent($groupObject, $userObject)); + if ($userObject instanceof IUser) { + $dispatcher->dispatchTyped(new UserAddedEvent($groupObject, $userObject)); + } \OCP\Util::writeLog('user_ldap', 'bgJ "updateGroups" – "'.$addedUser.'" added to "'.$group.'".', ILogger::INFO);