D

\XF\Mvc\Entity\Entity::saveIfChanged does not reset _writePending

  • Thread starter Thread starter DragonByte Tech
  • Start date Start date
D

DragonByte Tech

Guest

Problem: If you call $entity->preSave(), \XF\Mvc\Entity\Entity::$_writePending is set to true. If you subsequently call $entity->saveIfChanged(), and no changes are detected, you cannot write to the entity later, unless you manually call $entity->reset().

Proof of concept:
PHP:
Code:
$user = \XF::em()->find(\XF\Entity\User::class, 1);
$user->username = 'Admin'; // Set this to whatever the user name of userId 1 is

if (!$user->preSave())
{
    throw...

Read more

Continue reading...
 
Back
Top Bottom