diff --git a/src/regexp.c b/src/regexp.c
index fe83772..d66cd20 100644
--- a/src/regexp.c
+++ b/src/regexp.c
@@ -4692,31 +4692,37 @@
 		    /* match empty string always works; happens when "~" is
 		     * empty. */
 		}
-		else if (opnd[1] == NUL
+		else
+		{
+		    if (opnd[1] == NUL
 #ifdef FEAT_MBYTE
 			    && !(enc_utf8 && ireg_ic)
 #endif
 			)
-		    ++reginput;		/* matched a single char */
-		else
-		{
-		    len = (int)STRLEN(opnd);
-		    /* Need to match first byte again for multi-byte. */
-		    if (cstrncmp(opnd, reginput, &len) != 0)
-			status = RA_NOMATCH;
+		    {
+			len = 1;	/* matched a single byte above */
+		    }
+		    else
+		    {
+			/* Need to match first byte again for multi-byte. */
+			len = (int)STRLEN(opnd);
+			if (cstrncmp(opnd, reginput, &len) != 0)
+			    status = RA_NOMATCH;
+		    }
 #ifdef FEAT_MBYTE
 		    /* Check for following composing character. */
-		    else if (enc_utf8
-			       && UTF_COMPOSINGLIKE(reginput, reginput + len))
+		    if (status != RA_NOMATCH
+			    && enc_utf8
+			    && UTF_COMPOSINGLIKE(reginput, reginput + len)
+			    && !ireg_icombine)
 		    {
 			/* raaron: This code makes a composing character get
 			 * ignored, which is the correct behavior (sometimes)
 			 * for voweled Hebrew texts. */
-			if (!ireg_icombine)
-			    status = RA_NOMATCH;
+			status = RA_NOMATCH;
 		    }
 #endif
-		    else
+		    if (status != RA_NOMATCH)
 			reginput += len;
 		}
 	    }
diff --git a/src/testdir/test95.in b/src/testdir/test95.in
index 90fa699..817e1f1 100644
--- a/src/testdir/test95.in
+++ b/src/testdir/test95.in
@@ -50,6 +50,8 @@
 :call add(tl, [2, ".\u05b9", " y\u05bb\u05b9 x\u05b9 ", "y\u05bb\u05b9"])
 :call add(tl, [1, "\u05b9\u05bb", " y\u05b9 x\u05b9\u05bb ", "x\u05b9\u05bb"])
 :call add(tl, [2, ".\u05b9\u05bb", " y\u05bb x\u05b9\u05bb ", "x\u05b9\u05bb"])
+:call add(tl, [2, "a", "ca\u0300t"])
+:call add(tl, [2, "a\u0300", "ca\u0300t", "a\u0300"])
 
 
 :"""" Test \Z
diff --git a/src/testdir/test95.ok b/src/testdir/test95.ok
index c378221..e2baee8 100644
--- a/src/testdir/test95.ok
+++ b/src/testdir/test95.ok
@@ -67,6 +67,12 @@
 OK 0 - .ֹֻ
 OK 1 - .ֹֻ
 OK 2 - .ֹֻ
+OK 0 - a
+OK 1 - a
+OK 2 - a
+OK 0 - à
+OK 1 - à
+OK 2 - à
 OK 0 - ú\Z
 OK 1 - ú\Z
 OK 2 - ú\Z
diff --git a/src/version.c b/src/version.c
index 030e6f2..5efd62d 100644
--- a/src/version.c
+++ b/src/version.c
@@ -735,6 +735,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    292,
+/**/
     291,
 /**/
     290,
