Magento 2.2.4 Upgrade issue : Area is already set

This is a re-owned issue of Magento 2.2.4 C.E.

Magento has been fixed by Daniel Ruf at https://github.com/magento/magento2/commit/7019a0a1392095185505ff3ca7b97dd3e9cb4ef2 at PR #15137 and already merge at 2.2-develop branch

You need to modify the code of Magento\Email\Model\AbstractTemplate setForcedArea method and Replace that method code using below one.

public function setForcedArea($templateId)
{
    if (!isset($this->area)) {
        $this->area = $this->emailConfig->getTemplateArea($templateId);
    }
    return $this;
}

And it will be released on coming any version.Still is not fixed 2.2.5


It's thrown by this function in file vendor/magento/module-email/Model/AbstractTemplate.php on line 570.

Note I have commented out the error throwing part - which allows me to change the theme with what seems to be no ill effects. You could probably get the same results.

/**
 * Store the area associated with a template so that it will be returned by getDesignConfig and getDesignParams
 *
 * @param string $templateId
 * @return $this
 * @throws \Magento\Framework\Exception\MailException
 */
public function setForcedArea($templateId)
{
    #if ($this->area) {
    #    throw new \LogicException(__('Area is already set'));
    #}
    $this->area = $this->emailConfig->getTemplateArea($templateId);
    return $this;
}