[spip-dev] [spip-commit] r20827 - branches/spip-2.1/ecrire/balise

Author: denisb@a-working-class-hero-is-something-to.be
Date: 2013-09-23 16:08:22 +0200 (lun, 23 sep 2013)
New Revision: 20827

Log:
ecrire/balise/url_.php : retour sur r20769. la redirection peut être passée depuis un squelette sous la forme '' (cerdic).

Je ne comprends pas ce qu'on cherche à faire ici, et au minimum la rédaction n'est pas très heureuse:

if ($redirect AND $redirect == "''") {
  $redirect = NULL;
if ($redirect) {

La première ligne se réduit sans dommage à

if ($redirect == "''")

quant à la suivante elle rend $redirect indéfini ce qui provoque un Warning à la ligne suivante en mode strict, le mettre à "" serait plus heureux.
Mais surtout quel est le cas précis qu'on veut traiter ?
Un exemple test serait le bienvenu.

Committo,Ergo:Sum

La première ligne se réduit sans dommage à
if ($redirect == "''")

yep.

quant à la suivante elle rend $redirect indéfini ce qui provoque un Warning à la ligne suivante en mode strict, le mettre à "" serait plus heureux.

pas vu de warning. que ce soit en E_STRICT ou E_ALL

Mais surtout quel est le cas précis qu'on veut traiter ?

1- [(#URL_ACTION_AUTEUR{truc_a_faire, 'val', ''})]
<br />
2- [(#URL_ACTION_AUTEUR{truc_a_faire, 'val',})]
<br />
3- [(#URL_ACTION_AUTEUR{truc_a_faire, 'val', #SELF})]
<br />
4- [(#URL_ACTION_AUTEUR{truc_a_faire, 'val'})]

tout particulièrement le cas 1
dans les scripts, cerdic faisait justement remarquer que la fonction
calculer_liste renvoit "''" car elle commence par :
if (!$tableau) return "''"

quant à la suivante elle rend $redirect indéfini ce qui provoque un Warning à la ligne suivante en mode strict, le mettre à "" serait plus heureux.

pas vu de warning. que ce soit en E_STRICT ou E_ALL

Ca m'étonne. En tout cas il vaut mieux garder le même type, ici une chaîne, quand on affecte une variable.

Mais surtout quel est le cas précis qu'on veut traiter ?

1- [(#URL_ACTION_AUTEUR{truc_a_faire, 'val', ''})]
<br />
2- [(#URL_ACTION_AUTEUR{truc_a_faire, 'val',})]
<br />
3- [(#URL_ACTION_AUTEUR{truc_a_faire, 'val', #SELF})]
<br />
4- [(#URL_ACTION_AUTEUR{truc_a_faire, 'val'})]

tout particulièrement le cas 1

Ben je viens de compiler et sortir le debug pour les 2 versions de SPIP, avant ou après 20827, et je ne vois pas de différence dans le code produit.

Committo,Ergo:Sum

perso, avec :
   [(#URL_ACTION_AUTEUR{truc_a_faire, 'val', ''})]
tant en 2.1 qu'en 3.0, en étant loggué, je me trouve devant une
   " Erreur de compilation : squelettes/test_boucle.html "

ok j'avais mal testé, il y avait effectivement une erreur de compil dans le cas d'un "''" explicite (mais pourquoi se fatiguer à écrire ça ?)
Les derniers commit me vont.

  Committo,Ergo:Sum