updated for version 7.4.031
Problem:    ":diffoff!" resets options even when 'diff' is not set. (Charles
            Cooper)
Solution:   Only resets related options in a window where 'diff' is set.
diff --git a/src/diff.c b/src/diff.c
index 80f4473..49ca58a 100644
--- a/src/diff.c
+++ b/src/diff.c
@@ -1203,7 +1203,7 @@
 
     for (wp = firstwin; wp != NULL; wp = wp->w_next)
     {
-	if (wp == curwin || (eap->forceit && wp->w_p_diff))
+	if (eap->forceit ? wp->w_p_diff : wp == curwin)
 	{
 	    /* Set 'diff', 'scrollbind' off and 'wrap' on. If option values
 	     * were saved in diff_win_options() restore them. */
diff --git a/src/version.c b/src/version.c
index 272940a..b07e269 100644
--- a/src/version.c
+++ b/src/version.c
@@ -739,6 +739,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    31,
+/**/
     30,
 /**/
     29,