Project

General

Profile

Anomalie #4705

plantage dans le chemin d'inclure d'une balise dynamique sous Windows avec lien symbolique

Added by cy_altern - about 2 months ago. Updated 28 days ago.

Status:
Fermé
Priority:
Normal
Assignee:
Category:
-
Target version:
Start date:
03/26/2021
Due date:
% Done:

0%

Resolution:
fixed
Navigateur:

Description

la fonction synthetiser_balise_dynamique() https://git.spip.net/SPIP/spip/src/branch/master/ecrire/public/composer.php#L311 fait une modification du chemin du fichier de la fonction de la balise dynamique si le premier caractère de ce chemin n'est pas un / :

    if (strncmp($file, "/", 1) !== 0) {
        $file = './" . _DIR_RACINE . "' . $file;
    }

...mais sur un serveur sous Windows avec un SPIP ayant le dossier des plugins en lien symbolique, $file arrive avec un chemin complet "à la Windows" (par exemple D:/www/plugins/calendrier_mini/balise/calendrier_mini.php ), l'ajout de './" . _DIR_RACINE est joué ce qui fait foirer lamentablement l'inclure_once de $file par la suite ! (plugin en question pour ce problème : calendrier_mini)

Etant donné que c'est un cas de configuration serveur assez rare on pourrait se contenter du patch suivant :

    if (strncmp($file, "/", 1) !== 0 and substr_count($file, ':') === 0) {
        $file = './" . _DIR_RACINE . "' . $file;
    }

...qui ne semble pas provoquer d'effets secondaires sur Linux ou MacOS.

History

#1 Updated by cedric - 28 days ago

  • Status changed from Nouveau to Fermé
  • Resolution set to fixed

Also available in: Atom PDF