diff --git a/ecrire/inc/utils.php b/ecrire/inc/utils.php
index 4367780f8a897c3242c5d3b1d618ee2fb5d7a451..8820bf38b0792c5a976386f6245d1d2c415ae050 100644
--- a/ecrire/inc/utils.php
+++ b/ecrire/inc/utils.php
@@ -208,7 +208,10 @@ function spip_connect($serveur='') {
 
 	$f = charger_fonction($serveur, 'base', true);
 
-	return ($t[$serveur] = ($f ? $f() : false));
+	$t[$serveur] = $f ? $f() : false;
+	if(!defined('_SPIP_CHMOD')
+		define('_SPIP_CHMOD', 0777);
+	return $t[$serveur];
 }
 
 // http://doc.spip.org/@spip_query
diff --git a/ecrire/install/etape_1.php b/ecrire/install/etape_1.php
index 21dd9fd5defdbd5afde6d9769f58141862dc8c63..c04ed92b4d8ebca15ba9f7a766d7b2d2b132c66b 100644
--- a/ecrire/install/etape_1.php
+++ b/ecrire/install/etape_1.php
@@ -42,7 +42,7 @@ function install_etape_1_dist()
 			if ($port_db = $regs[2]) $adresse_db .= ':'.$port_db;
 			$login_db = $regs[3];
 		}
-		if(ereg("define\(_SPIP_CHMOD, (.*)\)", $s, $regs)) {
+		if(ereg("define\('_SPIP_CHMOD', (.*)\)", $s, $regs)) {
 			$chmod = $regs[1]; 
 		}
 	}