diff --git a/ChangeLog b/ChangeLog
index 8d28705d5695d87fd8a21b58fb8c7bfa5a1c42f1..90b6922d60ba35bbf6730f6b260233c8aa4882b7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -4,6 +4,8 @@ English Dolibarr ChangeLog
 
 
 ***** ChangeLog for 3.5.1 compared to 3.5.0 *****
+Fix: Do not report trigger errors twice.
+Fix: Error when creating event was not reported.
 Fix: Bug of import of agenda when using https link
 Fix: Field nature not saved correctly
 Fix: Substituion of extra field was ko for order
diff --git a/htdocs/admin/delais.php b/htdocs/admin/delais.php
index 7aeb6eb9f782ad19cafb4bd1f2ae9a6d3f1a3307..e16240bf2518b8984b0125ea39b7585c57e4bc19 100644
--- a/htdocs/admin/delais.php
+++ b/htdocs/admin/delais.php
@@ -107,7 +107,7 @@ if ($action == 'update')
     	{
     		foreach($delays as $delay)
     		{
-    			if (GETPOST($delay['code']))
+    			if (GETPOST($delay['code']) != '')
     			{
     				dolibarr_set_const($db, $delay['code'], GETPOST($delay['code']), 'chaine', 0, '', $conf->entity);
     			}
diff --git a/htdocs/comm/action/fiche.php b/htdocs/comm/action/fiche.php
index d0c6a213c77230dd797ca52486e29af31bd0bd13..ee20189f14fe62c82f6a78c9ff12af36b4aa7a30 100644
--- a/htdocs/comm/action/fiche.php
+++ b/htdocs/comm/action/fiche.php
@@ -261,8 +261,8 @@ if ($action == 'add_action')
 		{
 			$db->rollback();
 			$langs->load("errors");
-			$error=$langs->trans($actioncomm->error);
-			setEventMessage($error,'errors');
+			if (! empty($actioncomm->error)) setEventMessage($langs->trans($actioncomm->error), 'errors');
+			if (count($actioncomm->errors)) setEventMessage($actioncomm->errors, 'errors');
 			$action = 'create';
 		}
 	}
diff --git a/htdocs/core/class/interfaces.class.php b/htdocs/core/class/interfaces.class.php
index db39f7bab86964b6b1359dfc2a2771e6766a72de..428ea65a17491ccfd6f9db5c7ea60915e4333699 100644
--- a/htdocs/core/class/interfaces.class.php
+++ b/htdocs/core/class/interfaces.class.php
@@ -167,8 +167,8 @@ class Interfaces
                     // Action KO
                     $nbtotal++;
                     $nbko++;
-                    if (! empty($objMod->error))  $this->errors[]=$objMod->error;
                     if (! empty($objMod->errors)) $this->errors=array_merge($this->errors,$objMod->errors);
+                    else if (! empty($objMod->error))  $this->errors[]=$objMod->error;
                 }
             }
             else