Fatale sur `generer_objet_info()`
Un appel à generer_objet_info(123, 'rubrique', 'titre')
provoque une fatale car la fonction typo n'est pas définie.
Le bug a été introduit suite au patch 080e79da issu de le PR https://git.spip.net/spip/spip/pulls/4855 qui fixait spip-contrib-extensions/crayons#10 (closed)
Et @JLuc avait raison (spip-contrib-extensions/crayons#10 (closed)) : la fonction include_fichiers_fonctions()
ne provoque pas l'inclusion automatique de inc/texte
.
Je me suis demandé où fixer:
- dans la fonction
appliquer_traitement_champ()
que l'on a modifié ? - via une inclusion depuis un fichier fonction du plugin textwheel ?
- via une inclusion depuis le fichier
public/fonctions.php
Après réflexion je propose cette dernière solution car ce n'est pas inhérent à Textwheel (les traitements sont définis dans le core, et le fichier inc/texte
fait partie du core même si surchargé par textwheel), et je pense que le problème peut arriver dans une autre fonction que appliquer_traitement_champ()
Ce qui donnerait
diff --git a/ecrire/public/fonctions.php b/ecrire/public/fonctions.php
index 62753e925..8372bdceb 100644
--- a/ecrire/public/fonctions.php
+++ b/ecrire/public/fonctions.php
@@ -26,6 +26,9 @@ if (!defined('_ECRIRE_INC_VERSION')) {
return;
}
+// public/interfaces definit des traitements sur les champs qui utilisent des fonctions de inc/texte
+// il faut donc l'inclure des qu'on inclue les filtres et fonctions de SPIP car sinon on a potentiellement des fatales
+include_spip('inc/texte');