diff --git a/ecrire/inc/utils.php b/ecrire/inc/utils.php
index aff94e41228e82c9d297ae3a0e45b06bee0bdfa6..449028cf2f31354742d78ae01f21d0a23d221b72 100644
--- a/ecrire/inc/utils.php
+++ b/ecrire/inc/utils.php
@@ -780,7 +780,7 @@ function _chemin($dir_path=NULL){
 			_DIR_RACINE.':'.
 			_DIR_RACINE.'squelettes-dist/:'.
 			_DIR_RACINE.'prive/:'.
-			_DIR_RESTREINT.':';
+			_DIR_RESTREINT;
 		// Ajouter squelettes/
 		if (@is_dir(_DIR_RACINE.'squelettes'))
 			$path = _DIR_RACINE.'squelettes/:' . $path;
diff --git a/ecrire/xml/analyser_dtd.php b/ecrire/xml/analyser_dtd.php
index 25c691c26b0fcbec1ea7e46174a532fdaffb6e1e..6e300cb01825c93a53e0ee36cde7f31fa40c7a98 100644
--- a/ecrire/xml/analyser_dtd.php
+++ b/ecrire/xml/analyser_dtd.php
@@ -86,8 +86,12 @@ function analyser_dtd($loc, $avail, &$dtc)
 	// (utile aussi pour le resultat de la compil)
 	$file = sous_repertoire(_DIR_CACHE_XML);
 	// si DTD locale, ignorer ce repertoire pour le moment
-	if ($avail == 'SYSTEM')
-	  $file = find_in_path($loc);
+	if ($avail == 'SYSTEM'){
+		$file = $loc;
+		if (_DIR_RACINE AND strncmp($file,_DIR_RACINE,strlen(_DIR_RACINE))==0)
+			$file = substr($file,strlen(_DIR_RACINE));
+	  $file = find_in_path($file);
+	}
 	else {
 	  $file .= preg_replace('/[^\w.]/','_', $loc);
 	}