From ef0065a312c4e1488fa6f55b3ce0d56386b99793 Mon Sep 17 00:00:00 2001 From: "Committo,Ergo:sum" <esj@rezo.net> Date: Sat, 13 Aug 2005 21:52:18 +0000 Subject: [PATCH] =?UTF-8?q?attention,=20il=20faut=20accepter=20{#ENV{a}/#E?= =?UTF-8?q?NV{b}}=20m=C3=AAme=20si=20c'est=20gal=C3=A8re=20pour=20W*nd*ws?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- inc-html-squel.php3 | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/inc-html-squel.php3 b/inc-html-squel.php3 index d5d94af46f..65608e8324 100644 --- a/inc-html-squel.php3 +++ b/inc-html-squel.php3 @@ -188,12 +188,14 @@ function phraser_args($texte, $fin, $sep, $result, &$pointeur_champ) { if ($fonc[0] == "|") $fonc = ltrim(substr($fonc,1)); $res = array($fonc); $args = $suite ; - if (($suite[0] != '{') /* || !eregi("^[?A-Z0-9_]*$", $fonc) */) - { if (!$match[1]) + // cas du filtre sans argument ou du critere / + if (($suite[0] != '{') || ($fonc && $fonc[0] == '/')) + { + // si pas d'argument, alors il faut une fonction ou un double | + if (!$match[1]) erreur_squelette(_T('zbug_info_erreur_squelette'), $texte); - // suite zarbi, c'est un critere infixe comme "/" - /* ca serait pas mal d'expliquer, la c'est abscons */ - if (!preg_match(',^[)|],', $suite)) break; + // pas d'arg et pas d'autres filtres ==> critere infixe comme "/" + if ((!$suite) || strpos(")|", $suite[0]) === false) break; } else { $args = ltrim(substr($suite,1)); $collecte = array(); -- GitLab