identifiant_slug et séparateur vide
identifiant_slug ne gère pas très bien un séparateur vide et en SPIP 4.1 et 4.2 strpos génère un warning (pas le trunk qui utilise str_contains)
C'est https://git.spip.net/spip/spip/src/branch/4.2/ecrire/inc/filtres.php#L5483 :
// nettoyer les doubles occurences du separateur si besoin
while (strpos($texte, (string) "$separateur$separateur") !== false) {
$texte = str_replace("$separateur$separateur", $separateur, $texte);
}
Dans toutes les versions, il serait pas inutile de faire un bloc if ($separateur)
pour pas faire du boulot inutile... et pour se souvenir que separateur peut être vide.
Genre pour 4.1 et 4.2 :
if ($separateur) {
// nettoyer les doubles occurences du separateur si besoin
while (strpos($texte, (string) "$separateur$separateur") !== false) {
$texte = str_replace("$separateur$separateur", $separateur, $texte);
}
// pas de separateur au debut ni a la fin
$texte = trim($texte, $separateur);
}
(etc pour master)