diff --git a/ecrire/base/upgrade.php b/ecrire/base/upgrade.php
index 5983ecb0df5c01e6ffcfd89a3714255a57cd27bd..905a5408608003df4409edbf230921a9483917f0 100644
--- a/ecrire/base/upgrade.php
+++ b/ecrire/base/upgrade.php
@@ -1222,13 +1222,13 @@ function maj_base($version_cible = 0) {
 		spip_query("ALTER IGNORE TABLE spip_documents_rubriques DROP INDEX id_rubrique");
 		maj_version('1.920');
 	}
-	if (upgrade_vers(1.921, $version_installee, $version_cible)) {
+	if (upgrade_vers(1.922, $version_installee, $version_cible)) {
 		spip_query("ALTER TABLE spip_meta ADD impt ENUM('non', 'oui') DEFAULT 'oui' NOT NULL AFTER valeur");
 		$meta_serveur = array('version_installee','adresse_site','alea_ephemere_ancien','alea_ephemere','alea_ephemere_date','langue_site','langues_proposees','date_calcul_rubriques','derniere_modif','optimiser_table','drapeau_edition','creer_preview','taille_preview','creer_htpasswd','creer_htaccess','gd_formats_read','gd_formats',
 		'netpbm_formats','formats_graphiques','image_process','plugin_header','plugin');
 		foreach($meta_serveur as $nom)
 			spip_query("UPDATE spip_meta SET impt='non' WHERE nom="._q($nom));
-		maj_version('1.921');
+		maj_version('1.922');
 	}
 }
 
diff --git a/ecrire/inc/acces.php b/ecrire/inc/acces.php
index 49bb1b0880568954a8d86116729510073e2bd084..2cc545e09c4f7c7a7f5c9396d0005e7ad5794269 100644
--- a/ecrire/inc/acces.php
+++ b/ecrire/inc/acces.php
@@ -69,9 +69,9 @@ function creer_uniqid() {
 function renouvelle_alea()
 {
 	$alea = md5(creer_uniqid());
-	ecrire_meta('alea_ephemere_ancien', $GLOBALS['meta']['alea_ephemere']);
-	ecrire_meta('alea_ephemere', $alea);
-	ecrire_meta('alea_ephemere_date', time());
+	ecrire_meta('alea_ephemere_ancien', $GLOBALS['meta']['alea_ephemere'],'non');
+	ecrire_meta('alea_ephemere', $alea,'non');
+	ecrire_meta('alea_ephemere_date', time(),'non');
 	ecrire_metas();
 	spip_log("renouvellement de l'alea_ephemere: $alea");
 }
diff --git a/ecrire/inc/meta.php b/ecrire/inc/meta.php
index a8efdc3095985dd09c341c20f6caae8c68f7e29a..61013e199112aff3636a6cbcbb59522e803bef2c 100644
--- a/ecrire/inc/meta.php
+++ b/ecrire/inc/meta.php
@@ -32,8 +32,12 @@ function ecrire_meta($nom, $valeur, $importable = NULL) {
 		$GLOBALS['meta'][$nom] = $valeur; 
 		if (!_FILE_CONNECT && !@file_exists(_FILE_CONNECT_INS .'.php')) return;
 		// conserver la valeur de impt si existante
-		if ($importable === NULL)
-			spip_query("REPLACE spip_meta (nom, valeur) VALUES ("._q($nom).", " . _q($valeur) . ")");
+		if ($importable === NULL){
+			if (@spip_num_rows(spip_query("SELECT * FROM spip_meta WHERE nom="._q($nom))))
+				spip_query("UPDATE spip_meta SET valeur=" . _q($valeur) . " WHERE nom="._q($nom));
+			else
+				spip_query("INSERT spip_meta (nom, valeur) VALUES ("._q($nom).", " . _q($valeur) . ")");
+		}
 		else
 			spip_query("REPLACE spip_meta (nom, valeur, impt) VALUES ("._q($nom).", " . _q($valeur) . ","._q($importable).")");
 	}
diff --git a/ecrire/inc_version.php b/ecrire/inc_version.php
index c35365b5fe3267ca3b88540edd3b6046accbb60d..063680547a90bd825cb90c7110b793626d5942cd 100644
--- a/ecrire/inc_version.php
+++ b/ecrire/inc_version.php
@@ -284,7 +284,7 @@ $tables_des_serveurs_sql['localhost'] =  &$tables_principales;
 // (utilise pour les modifs de la base de donnees)
 
 // version de la base
-$spip_version = 1.921;
+$spip_version = 1.922;
 
 // version de spip en chaine
 // et en numerique a incrementer sur les evolutions qui cassent la compatibilite descendante