diff --git a/lib/ShareByCircleProvider.php b/lib/ShareByCircleProvider.php index baecdc2b2..c6f5520df 100644 --- a/lib/ShareByCircleProvider.php +++ b/lib/ShareByCircleProvider.php @@ -249,9 +249,19 @@ public function create(IShare $share): IShare { * @param IShare $share * * @return IShare + * @throws IllegalIDChangeException + * @throws ShareWrapperNotFoundException + * @throws RequestBuilderException */ public function update(IShare $share): IShare { - return $share; + $wrappedShare = $this->shareWrapperService->getShareById((int)$share->getId()); + $wrappedShare->setPermissions($share->getPermissions()) + ->setShareOwner($share->getShareOwner()) + ->setSharedBy($share->getSharedBy()); + + $this->shareWrapperService->update($wrappedShare); + + return $wrappedShare->getShare($this->rootFolder, $this->userManager, $this->urlGenerator); } /**