diff --git a/Classes/Component/Core/Repository/SingleDatabaseRepository.php b/Classes/Component/Core/Repository/SingleDatabaseRepository.php index 79deee7a1..6f2d499fb 100644 --- a/Classes/Component/Core/Repository/SingleDatabaseRepository.php +++ b/Classes/Component/Core/Repository/SingleDatabaseRepository.php @@ -148,6 +148,14 @@ public function findByPropertyWithJoin( $splitRow['mmtbl']['uid_local'], $splitRow['mmtbl']['uid_foreign'], ]; + if(isset($splitRow['mmtbl']['tablenames'])) + { + $mmIdentityProperties[] = $splitRow['mmtbl']['tablenames']; + } + if(isset($splitRow['mmtbl']['fieldname'])) + { + $mmIdentityProperties[] = $splitRow['mmtbl']['fieldname']; + } $splitRows[hash('sha1', json_encode($mmIdentityProperties, JSON_THROW_ON_ERROR))] = $splitRow; } /* @@ -230,6 +238,8 @@ public function findMmByProperty(string $table, string $property, array $values) $mmIdentityProperties = [ $row['uid_local'], $row['uid_foreign'], + $row['tablenames'] ?? null, + $row['fieldname'] ?? null, ]; $rows[hash('sha1', json_encode($mmIdentityProperties, JSON_THROW_ON_ERROR))] = $row; }