updated for version 7.3.523
Problem:    ":diffupdate" doesn't check for files changed elsewhere.
Solution:   Add the ! flag. (Christian Brabandt)
diff --git a/src/diff.c b/src/diff.c
index 5844ec9..d9aaec8 100644
--- a/src/diff.c
+++ b/src/diff.c
@@ -783,6 +783,15 @@
 	goto theend;
     }
 
+    /* :diffupdate! */
+    if (eap != NULL && eap->forceit)
+	for (idx_new = idx_orig; idx_new < DB_COUNT; ++idx_new)
+	{
+	    buf = curtab->tp_diffbuf[idx_new];
+	    if (buf_valid(buf))
+		buf_check_timestamp(buf, FALSE);
+	}
+
     /* Write the first buffer to a tempfile. */
     buf = curtab->tp_diffbuf[idx_orig];
     if (diff_write(buf, tmp_orig) == FAIL)