If you are stream wrappers; php7.1 starts throwing "tempnam(): file created in the system's temporary directory" on avatar or attachment uploads. This is because tempnam() deosn't actaully support stream wrappers.
Previous versions would silently use the system temporary directory, and as such would work as expected.
The problem is XenForo_Helper_File::getTempDir is defined as:
Rather than something that can be defined independantly of the internal data path which can be in a path defined by a stream wrapper.
This affects;
Previous versions would silently use the system temporary directory, and as such would work as expected.
The problem is XenForo_Helper_File::getTempDir is defined as:
Code:
public static function getTempDir()
{
return self::getInternalDataPath() . '/temp';
}
This affects;
- avatar uploading on registration (gravatars)
- attachments
- avatar uploading
- various importers
- XenForo's HTTP client (image proxy + title auto-link)
Last edited: