diff --git a/ecrire/inc_documents.php3 b/ecrire/inc_documents.php3
index f67bb578fd0d9d2ff0646a768370e0343daa4d87..a25af7a302738a2c3f7203a7ffac38950499044b 100644
--- a/ecrire/inc_documents.php3
+++ b/ecrire/inc_documents.php3
@@ -386,14 +386,16 @@ function integre_image($id_document, $align, $type_aff) {
 //
 // Traitement des images et documents <IMGxx|right> pour inc_texte
 //
-function inserer_documents($letexte, $matches) {
+function inserer_documents($letexte) {
 	# HACK: empecher les boucles infernales lorsqu'un document est mentionne
 	# dans son propre descriptif (on peut citer un document dans un autre,
 	# mais il faut pas trop pousser...)
 	static $pile = 0;
 	if (++$pile > 5) return '';
 
-	foreach ($matches as $match) {
+	foreach (
+	preg_match_all(__preg_img, $letexte, $matches, PREG_SET_ORDER)
+	as $match) {
 		$type = strtoupper($match[1]);
 		if ($type == 'EMB')
 			$rempl = embed_document($match[2], $match[4]);
diff --git a/ecrire/inc_texte.php3 b/ecrire/inc_texte.php3
index 8fc3b1a9fe822c88f79847479ba163c4478f102d..cc438f1bdd6f4db565e09b3e9338b3fece84bd0b 100644
--- a/ecrire/inc_texte.php3
+++ b/ecrire/inc_texte.php3
@@ -476,9 +476,9 @@ function typo($letexte, $echapper=true) {
 	//
 	// NOTE : dans propre() ceci s'execute avant les tableaux a cause du "|",
 	// et apres les liens a cause du traitement de [<imgXX|right>->URL]
-	if (preg_match_all(__preg_img, $letexte, $matches, PREG_SET_ORDER)) {
+	if (preg_match(__preg_img, $letexte)) {
 		include_ecrire('inc_documents');
-		$letexte = inserer_documents($letexte, $matches);
+		$letexte = inserer_documents($letexte);
 	}
 
 	// Appeler les fonctions de post-traitement