diff --git a/core/lib/Drupal/Core/Entity/ContentEntityBase.php b/core/lib/Drupal/Core/Entity/ContentEntityBase.php index becd941..274e6f9 100644 --- a/core/lib/Drupal/Core/Entity/ContentEntityBase.php +++ b/core/lib/Drupal/Core/Entity/ContentEntityBase.php @@ -1069,7 +1069,7 @@ public function __clone() { // Ensure the originalRevisionId property is actually cloned by // overwriting the original reference with one pointing to a copy of it. - $original_revision_id = $this->getOriginalRevisionId(); + $original_revision_id = $this->originalRevisionId; $this->originalRevisionId = &$original_revision_id; } } diff --git a/core/tests/Drupal/KernelTests/Core/Entity/EntityOriginalRevisionTest.php b/core/tests/Drupal/KernelTests/Core/Entity/EntityOriginalRevisionTest.php index ea4437e..4c48646 100644 --- a/core/tests/Drupal/KernelTests/Core/Entity/EntityOriginalRevisionTest.php +++ b/core/tests/Drupal/KernelTests/Core/Entity/EntityOriginalRevisionTest.php @@ -106,13 +106,19 @@ public function testOriginalRevisionId() { $this->assertEquals($french->getRevisionId(), $french->getOriginalRevisionId()); $this->assertEquals($loaded->getRevisionId(), $french->getOriginalRevisionId()); $this->assertEquals($loaded->getOriginalRevisionId(), $french->getOriginalRevisionId()); + $first_revision_id = $french->getRevisionId(); $french->setNewRevision(); // Setting a new revision will reset the original revision ID. + $this->assertEquals($first_revision_id, $french->getOriginalRevisionId()); + $this->assertEquals($first_revision_id, $loaded->getOriginalRevisionId()); $this->assertNotEquals($french->getRevisionId(), $french->getOriginalRevisionId()); $this->assertGreaterThan($french->getRevisionId(), $french->getOriginalRevisionId()); + $this->assertNotEquals($loaded->getRevisionId(), $loaded->getOriginalRevisionId()); + $this->assertGreaterThan($loaded->getRevisionId(), $loaded->getOriginalRevisionId()); $french->save(); // Saving the new revision will reset the origin revision ID again. $this->assertEquals($french->getRevisionId(), $french->getOriginalRevisionId()); + $this->assertEquals($loaded->getRevisionId(), $loaded->getOriginalRevisionId()); } }