Non prise en compte de la balise `genie` d'un paquet.xml lors du vidage de cache
La balise genie
dans un paquet.xml n'ajoute pas l'entrée adéquat dans tmp/charger_pipelines.php
dès lors qu'on vide le cache. Il faut repasser sur la page admin_plugins pour qu'elle soit prise en compte.
Le problème vient du code suivant :
if (charger_fonction($nom, "genie", true)) { $prepend_code['taches_generales_cron'] .= "\$val['$nom'] = $periode;\n"; } else { spip_log("Fonction genie_$nom introuvable", _LOG_ERREUR); }
Effectivement à ce moment là, le chemin des plugins n'est pas encore pris en compte par SPIP et du coup, le charger_fonction() retourne toujours false.
Je vois deux possibilités pour corriger :
A) Ignorer ce if tout simplement, considérant que job_queue écrira un log (certes pas du niveau _LOG_ERREUR) en cas où il ne trouve pas la fonction demandée
B) Remonter le chargement des chemins des plugins : il est effectué juste avant le chargement des fichiers d'options, à la fin de la fonction.
La partie de chargement des chemins (include_once(_CACHE_PLUGINS_PATH);
) pourrait être monté en tête de cette fonction, au niveau de $prepend_code = array();
Des avis ?