updated for version 7.4.110
Problem:    "gUgn" cannot be repeeated. (Dimitar Dimitrov)
Solution:   Don't put "gn" in a different order in the redo buffer.  Restore
            'wrapscan' when the pattern isn't found. (Christian Wellenbrock)
diff --git a/src/search.c b/src/search.c
index 2fb7624..d97dcf6 100644
--- a/src/search.c
+++ b/src/search.c
@@ -4544,7 +4544,10 @@
     /* Is the pattern is zero-width? */
     one_char = is_one_char(spats[last_idx].pat);
     if (one_char == -1)
-	return FAIL;  /* invalid pattern */
+    {
+	p_ws = old_p_ws;
+	return FAIL;  /* pattern not found */
+    }
 
     /*
      * The trick is to first search backwards and then search forward again,