Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/text.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorJulius Härtl <jus@bitgrid.net>2020-11-25 12:21:27 +0300
committerJulius Härtl <jus@bitgrid.net>2020-12-02 17:26:50 +0300
commita72e87e16de818d04ca33e776d607844c85dc09d (patch)
treee46191748ecccf5ec595be4381e5b7e564be1355 /lib
parent44bdb13119e547616634d0a0a113209c8ff5c2ee (diff)
Properly cleanup sessions when resetting a document
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Diffstat (limited to 'lib')
-rw-r--r--lib/Service/DocumentService.php9
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/Service/DocumentService.php b/lib/Service/DocumentService.php
index ccccfae59..918fe31df 100644
--- a/lib/Service/DocumentService.php
+++ b/lib/Service/DocumentService.php
@@ -27,6 +27,7 @@ namespace OCA\Text\Service;
use \InvalidArgumentException;
use OCA\Text\Db\Session;
+use OCA\Text\Db\SessionMapper;
use OCP\DirectEditing\IManager;
use OCP\IRequest;
use OCP\Lock\ILockingProvider;
@@ -74,6 +75,10 @@ class DocumentService {
*/
private $documentMapper;
/**
+ * @var SessionMapper
+ */
+ private $sessionMapper;
+ /**
* @var ILogger
*/
private $logger;
@@ -98,9 +103,10 @@ class DocumentService {
*/
private $appData;
- public function __construct(DocumentMapper $documentMapper, StepMapper $stepMapper, IAppData $appData, $userId, IRootFolder $rootFolder, ICacheFactory $cacheFactory, ILogger $logger, ShareManager $shareManager, IRequest $request, IManager $directManager, ILockingProvider $lockingProvider) {
+ public function __construct(DocumentMapper $documentMapper, StepMapper $stepMapper, SessionMapper $sessionMapper, IAppData $appData, $userId, IRootFolder $rootFolder, ICacheFactory $cacheFactory, ILogger $logger, ShareManager $shareManager, IRequest $request, IManager $directManager, ILockingProvider $lockingProvider) {
$this->documentMapper = $documentMapper;
$this->stepMapper = $stepMapper;
+ $this->sessionMapper = $sessionMapper;
$this->userId = $userId;
$this->appData = $appData;
$this->rootFolder = $rootFolder;
@@ -342,6 +348,7 @@ class DocumentService {
if ($force || !$this->hasUnsavedChanges($document)) {
$this->stepMapper->deleteAll($documentId);
+ $this->sessionMapper->deleteByDocumentId($documentId);
$this->documentMapper->delete($document);
try {