Et la réponse de Laurent... -------- Message transféré -------- De: Laurent Destailleur (Eldy) <[EMAIL PROTECTED]> Répondre à: Discussions sur le developpement de Dolibarr <[email protected]> À: Discussions sur le developpement de Dolibarr <[email protected]> Objet: Re: [Dolibarr-dev] Le bug de vianney - solution : create_exdir Date: Fri, 06 Jan 2006 15:46:37 +0100 Gael Canal wrote:
>Je me répond à moi même, et je vous propose un patch > >Le jeudi 05 janvier 2006 à 16:08 +0100, Gael Canal a écrit : > > > >>Ce qui semble bizarre, c'est que l'appel !file_exists() dans la boucle >>ne semble pas avoir d'effet puisque mkdir est appelé successivement >>avec /var, /var/www etc... >> >> > >If you use open_basedir in php.ini and use file_exists for file outside >open_basedir path, you will not be warned at log and file_exists returns >false even if file really exists. > >ceci explique cela. > > > Merci pour cette analyse. J'ai fait une correction différente que celle proposée. La voici. J'ai laissé la fonction tel quelle, c'est-à-dire création des différents niveaux de rep de manière récursives. Par contre le code retour renvoyé se base uniquement sur l'existence ou création du dernier répertoire. En effet, si le dernier niveau est ok, tout est ok et si non, y a pb. Le code retour ne dépend donc plus des niveaux intermédiaires qui dépendent de open_basedir. >>Il y a donc un bug dans la fonction create_exdir. >> >> > >confirmé :-) > >Je pense que la stratégie à appliquer serait soit (au choix) > >A/ >1. de vérifier la valeur de open_basedir >2. d'en déduire la "racine" des tests (en n'oubliant pas qu'il peut y >avoir plusieurs open_basedir séparés par des ';') >3. de n'effectuer les création qu'en dessous de cette racine. > >B/ >1. de n'incrémenter le comteur d'erreur QUE pour la dernière tentative >(création du répertoire ultime) - simple et efficace. > >++ >Gael > > > >_______________________________________________ >Dolibarr-dev mailing list >[email protected] >http://lists.nongnu.org/mailman/listinfo/dolibarr-dev > > > > _______________________________________________ Dolibarr-dev mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/dolibarr-dev
