diff --git a/ecrire/inc/queue.php b/ecrire/inc/queue.php
index 70e5703c4e40b215388482c401502999f0cc7f12..079ad94e0bfad95f946ebfa8f61005eb56144c22 100644
--- a/ecrire/inc/queue.php
+++ b/ecrire/inc/queue.php
@@ -505,6 +505,11 @@ function queue_affichage_cron(){
 	if (queue_sleep_time_to_next_job() OR defined('_DEBUG_BLOCK_QUEUE'))
 		return $texte;
 
+	// ne pas relancer si on vient de lancer dans la meme seconde par un hit concurent
+	if (file_exists($lock=_DIR_TMP."cron.lock") AND !(@filemtime($lock)<$_SERVER['REQUEST_TIME']))
+		return $texte;
+	@touch($lock);
+
 	// il y a des taches en attentes
 
 	$url_cron = generer_url_action('cron','',false,true);
@@ -529,7 +534,7 @@ function queue_affichage_cron(){
 		}
 	}
 
-	// ici lancer le cron par un CURL asynchrone si CURL est pr�sent
+	// ici lancer le cron par un CURL asynchrone si CURL est present
 	if (function_exists("curl_init")){
 		//setting the curl parameters.
 		$ch = curl_init($url_cron);