Catch potential exceptions when accessing the users avatar - e.g. issues with the encrypted file system - fixes #21983

This commit is contained in:
Thomas Müller 2016-01-29 15:39:39 +01:00
parent 8ad45dad38
commit ca5d72e6b0
1 changed files with 15 additions and 2 deletions

View File

@ -39,7 +39,7 @@ class Converter {
$displayName = empty($displayName ) ? $uid : $displayName;
$emailAddress = $user->getEMailAddress();
$cloudId = $user->getCloudId();
$image = $user->getAvatarImage(-1);
$image = $this->getAvatarImage($user);
$vCard = new VCard();
$vCard->add(new Text($vCard, 'UID', $uid));
@ -72,7 +72,7 @@ class Converter {
$displayName = empty($displayName ) ? $uid : $displayName;
$emailAddress = $user->getEMailAddress();
$cloudId = $user->getCloudId();
$image = $user->getAvatarImage(-1);
$image = $this->getAvatarImage($user);
$updated = false;
if($this->propertyNeedsUpdate($vCard, 'FN', $displayName)) {
@ -155,4 +155,17 @@ class Converter {
return $result;
}
/**
* @param IUser $user
* @return null|IImage
*/
private function getAvatarImage(IUser $user) {
try {
$image = $user->getAvatarImage(-1);
return $image;
} catch (\Exception $ex) {
return null;
}
}
}