[spip-dev] erreur regexp dans ajouter_document

Bonjour,

Voici l'erreur que j'obtiens dans les logs apache quand je veux ajouter un
document à un article.

PHP Warning: preg_match(): Compilation failed: POSIX collating elements are
not supported at offset 0 in
/srv/www/htdocs/spip/ecrire/inc/ajouter_documents.php on line 486

Le document est ajouté mais son nom est est faux. (toto.jpg devient -#.jpg)

en cause ',[.]([^.]+)$,' avec PHP 5.3.8 et SPIP 2.1.13 [19292]

remplacé par ,\.([^.]+)$, sur les conseils de denisb plus de problème.

Faudrait peut-être corriger sur le svn?

Heu pas de nouvelles... Je ne suis pas au bon endroit?

En 2.1.14 aussi ?

Ben s wrote:

En 2.1.14 aussi ?

Oui aussi :frowning:

Bizarre que l'erreur ne se produise que chez toi...
Quelqu'un peut confirmer ?... Auquel cas il y a peut être bien d'autres REGEXP à corriger [.] étant assez souvent utilisé...

Cédric

75 fois précisemment...

Voilà, il s'agit donc de comprendre quel est vraiment le problème (version de POSIX qui change l'analyse des REGEXP ?).
En particulier si on doit corriger 75 regexp il s'agit de bien relire le diff car on aura vite fait d'introduire un autre bug.

Sans compter que dans ce cas, il faut aussi le faire dans la branche 3.0, sur la zone etc...

Donc il est urgent de confirmer que ce n'est pas juste un problème sur une installation donnée...

Cédric

*ce* problème là (ajouter_documents) ne concerne pas spip3 qui utilise
medias qui, lui, à une regexp d'équerre...

pour *ce* problème spécifique, tu peux utiliser le plugin
mediatheque qui surcharge le fichier en question et utilise
une autre regexp.

cela dit, c'est surprenant que tu n'ais pas rencontré de
problème à d'autres endroits de ton spip : cette écriture
[.] étant utilisée bien des fois...

peux-tu nous donner un plus d'info sur ta config serveur ?

apparemment le problème vient de *cette* regexp précise.

on a :
   [.]([^.]+)$
qui est pris comme :
   [. ]([^ .]+)$
posix comprenant [. xxx .] comme une classe spécifique
et non comme la juxtaposition de 2 classes

:frowning:

pour conclure...
   http://core.spip.org/projects/spip/repository/revisions/19385
devrait réparer tout ça

Super merci!!

denisb wrote: