From 30eb5ed5a0e1c01b9aabc675e56d0e309b954435 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Wed, 1 Feb 2023 21:49:34 +0100 Subject: [PATCH] Do not reuse query builder objects in DAV account deletion Signed-off-by: Joas Schilling --- apps/dav/lib/CalDAV/CalDavBackend.php | 4 ++-- apps/dav/lib/CardDAV/CardDavBackend.php | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/dav/lib/CalDAV/CalDavBackend.php b/apps/dav/lib/CalDAV/CalDavBackend.php index a147d785cc747..8108260797c01 100644 --- a/apps/dav/lib/CalDAV/CalDavBackend.php +++ b/apps/dav/lib/CalDAV/CalDavBackend.php @@ -908,7 +908,7 @@ public function deleteCalendar($calendarId, bool $forceDeletePermanently = false ->executeStatement(); $qbDeleteCalendarChanges = $this->db->getQueryBuilder(); - $qbDeleteCalendarObjects->delete('calendarchanges') + $qbDeleteCalendarChanges->delete('calendarchanges') ->where($qbDeleteCalendarChanges->expr()->eq('calendarid', $qbDeleteCalendarChanges->createNamedParameter($calendarId))) ->andWhere($qbDeleteCalendarChanges->expr()->eq('calendartype', $qbDeleteCalendarChanges->createNamedParameter(self::CALENDAR_TYPE_CALENDAR))) ->executeStatement(); @@ -916,7 +916,7 @@ public function deleteCalendar($calendarId, bool $forceDeletePermanently = false $this->calendarSharingBackend->deleteAllShares($calendarId); $qbDeleteCalendar = $this->db->getQueryBuilder(); - $qbDeleteCalendarObjects->delete('calendars') + $qbDeleteCalendar->delete('calendars') ->where($qbDeleteCalendar->expr()->eq('id', $qbDeleteCalendar->createNamedParameter($calendarId))) ->executeStatement(); diff --git a/apps/dav/lib/CardDAV/CardDavBackend.php b/apps/dav/lib/CardDAV/CardDavBackend.php index b4fdcf922dc45..041ae140f5e79 100644 --- a/apps/dav/lib/CardDAV/CardDavBackend.php +++ b/apps/dav/lib/CardDAV/CardDavBackend.php @@ -456,11 +456,13 @@ public function deleteAddressBook($addressBookId) { ->setParameter('addressbookid', $addressBookId, IQueryBuilder::PARAM_INT) ->executeStatement(); + $query = $this->db->getQueryBuilder(); $query->delete('addressbookchanges') ->where($query->expr()->eq('addressbookid', $query->createParameter('addressbookid'))) ->setParameter('addressbookid', $addressBookId, IQueryBuilder::PARAM_INT) ->executeStatement(); + $query = $this->db->getQueryBuilder(); $query->delete('addressbooks') ->where($query->expr()->eq('id', $query->createParameter('id'))) ->setParameter('id', $addressBookId, IQueryBuilder::PARAM_INT) @@ -468,6 +470,7 @@ public function deleteAddressBook($addressBookId) { $this->sharingBackend->deleteAllShares($addressBookId); + $query = $this->db->getQueryBuilder(); $query->delete($this->dbCardsPropertiesTable) ->where($query->expr()->eq('addressbookid', $query->createNamedParameter($addressBookId, IQueryBuilder::PARAM_INT))) ->executeStatement();