diff --git a/plugins/personal/generic/class_user.inc b/plugins/personal/generic/class_user.inc
index efb05047f340862f033cc410839de07c6cbd628a..00da0671ab51f0797835b70c650f81c2810a8a51 100644
--- a/plugins/personal/generic/class_user.inc
+++ b/plugins/personal/generic/class_user.inc
@@ -549,6 +549,15 @@ class user extends simplePlugin
     return parent::execute();
   }
 
+  protected function shouldSave()
+  {
+    if ($this->attributesAccess['userPassword']->getClear() != '') {
+      /* There may be hooks using this even if LDAP object is not modified */
+      return TRUE;
+    }
+    return parent::shouldSave();
+  }
+
   protected function prepare_save ()
   {
     global $config;