ecrire_config('forums_titre', 'oui') provoque une notice en PHP 8.2
Bonjour,
Je teste le plugin ieconfig avec SPIP 4.2.2 + PHP 8.2.
Et à l'importation d'une sauvegarde, j'ai eu plein de notice :
Notice: unserialize(): Error at offset 0 of 3 bytes in ecrire\inc\config.php on line 210
Et c'est des écritures du type :
ecrire_config('forums_titre', 'oui');
qui provoquent la notice.
C'est la ligne https://git.spip.net/spip/spip/src/branch/4.2/ecrire/inc/config.php#L210
Il n'y a aucune vérification que la donnée déserialisée est effectivement serialisée.
WordPress a 2 fonctions pour cela : https://github.com/WordPress/wordpress-develop/blob/trunk/src/wp-includes/functions.php#L648 Et l'usage de @ pour masquer une éventuelle erreur.
PHP 8.3 annonce durcir le message d'erreur de notice à warning : https://php.watch/versions/8.3/unserialize-E-WARNING
PS : c'est https://git.spip.net/spip-contrib-extensions/ieconfig/src/branch/master/formulaires/ieconfig_import.php#L208 qui fait l'appel.
Mais j'ai préféré faire le ticket ici car ça me semble être un problème au cœur de SPIP.