diff --git a/htdocs/core/class/menubase.class.php b/htdocs/core/class/menubase.class.php
index ecdb8752b8a5eaf3f84acca55e63b6819e3914be..852be332686d8bd12adbed42aed7714e7963ffc8 100644
--- a/htdocs/core/class/menubase.class.php
+++ b/htdocs/core/class/menubase.class.php
@@ -107,18 +107,22 @@ class Menubase
         // an insert with a forced id.
         if (in_array($this->db->type,array('pgsql')))
         {
-			$sql = "SELECT MAX(rowid) as maxrowid FROM ".MAIN_DB_PREFIX."menu";
-        	$resqlrowid=$this->db->query($sql);
-        	if ($resqlrowid)
-        	{
-        		$obj=$this->db->fetch_object($resqlrowid);
-        		$maxrowid=$obj->maxrowid;
-
-        		$sql = "SELECT setval('".MAIN_DB_PREFIX."menu_rowid_seq', ".($maxrowid).")";
-	        	$resqlrowidset=$this->db->query($sql);
-	     		if (! $resqlrowidset) dol_print_error($this->db);
-        	}
-        	else dol_print_error($this->db);
+          $sql = "SELECT MAX(rowid) as maxrowid FROM ".MAIN_DB_PREFIX."menu";
+          $resqlrowid=$this->db->query($sql);
+          if ($resqlrowid)
+          {
+               $obj=$this->db->fetch_object($resqlrowid);
+               $maxrowid=$obj->maxrowid;
+
+               // Max rowid can be empty if there is no record yet
+               if(empty($maxrowid)) $maxrowid=1;
+
+               $sql = "SELECT setval('".MAIN_DB_PREFIX."menu_rowid_seq', ".($maxrowid).")";
+               //print $sql; exit;
+               $resqlrowidset=$this->db->query($sql);
+               if (! $resqlrowidset) dol_print_error($this->db);
+          }
+          else dol_print_error($this->db);
         }
 
         // Insert request