This avoids issues with requestReauthentication() being called for guests.
I verified that none of the actual processing happens before the
checkPermissions() check.
$this->setup = $this->setups[$_GET['id']];
$this->method = $this->setup->getObjectType();
\assert($this->method->getDefinition()->definitionName === 'com.woltlab.wcf.multifactor');
+ }
+
+ /**
+ * @inheritDoc
+ */
+ public function checkPermissions() {
+ parent::checkPermissions();
$this->requestReauthentication(LinkHandler::getInstance()->getControllerLink(static::class, [
'object' => $this->setup,
$this->method = $objectType;
$this->processor = $this->method->getProcessor();
$this->setup = Setup::find($this->method, WCF::getUser());
+ }
+
+ /**
+ * @inheritDoc
+ */
+ public function checkPermissions() {
+ parent::checkPermissions();
$this->requestReauthentication(LinkHandler::getInstance()->getControllerLink(static::class, [
'object' => $this->method,