diff --git a/lib/private/encryption/manager.php b/lib/private/encryption/manager.php index cf11c3cf3354f1159fba68c9ba73c5d32a9f6115..77f02b0c489702c9a8e4313ff04c3f71e6fe7d3e 100644 --- a/lib/private/encryption/manager.php +++ b/lib/private/encryption/manager.php @@ -194,7 +194,8 @@ class Manager implements \OCP\Encryption\IManager { $user = \OC::$server->getUserSession()->getUser(); $logger = \OC::$server->getLogger(); $uid = $user ? $user->getUID() : null; - return new Encryption($parameters, $manager, $util, $logger, $uid); + $fileHelper = \OC::$server->getEncryptionFilesHelper(); + return new Encryption($parameters, $manager, $util, $logger, $fileHelper, $uid); }); } } diff --git a/lib/private/files/storage/wrapper/encryption.php b/lib/private/files/storage/wrapper/encryption.php index cea7a38d41bb775ef7d1c697d046be7d5dbd8250..43052af8448b620d70e9cd5e634f2d9815ec0f8a 100644 --- a/lib/private/files/storage/wrapper/encryption.php +++ b/lib/private/files/storage/wrapper/encryption.php @@ -45,11 +45,15 @@ class Encryption extends Wrapper { /** @var array */ private $unencryptedSize; + /** @var \OC\Encryption\File */ + private $fileHelper; + /** * @param array $parameters * @param \OC\Encryption\Manager $encryptionManager * @param \OC\Encryption\Util $util * @param \OC\Log $logger + * @param \OC\Encryption\File $fileHelper * @param string $uid user who perform the read/write operation (null for public access) */ public function __construct( @@ -57,6 +61,7 @@ class Encryption extends Wrapper { \OC\Encryption\Manager $encryptionManager = null, \OC\Encryption\Util $util = null, \OC\Log $logger = null, + \OC\Encryption\File $fileHelper = null, $uid = null ) { @@ -65,6 +70,7 @@ class Encryption extends Wrapper { $this->util = $util; $this->logger = $logger; $this->uid = $uid; + $this->fileHelper = $fileHelper; $this->unencryptedSize = array(); parent::__construct($parameters); } @@ -250,7 +256,7 @@ class Encryption extends Wrapper { $uid = $owner; } $handle = \OC\Files\Stream\Encryption::wrap($source, $path, $fullPath, $header, - $uid, $encryptionModule, $this->storage, $this, $this->util, $mode, + $uid, $encryptionModule, $this->storage, $this, $this->util, $this->fileHelper, $mode, $size, $unencryptedSize); return $handle; } else {