diff --git c/contrib/fuzzystrmatch/dmetaphone.c i/contrib/fuzzystrmatch/dmetaphone.c
index f8ab8e47c85..77d073a38a5 100644
--- c/contrib/fuzzystrmatch/dmetaphone.c
+++ i/contrib/fuzzystrmatch/dmetaphone.c
@@ -808,11 +808,10 @@ DoubleMetaphone(const char *str, Oid collid, char **codes)
 						MetaphAdd(primary, "KN");
 						MetaphAdd(secondary, "N");
 					}
-					else
-						/* not e.g. 'cagney' */
-						if (!StringAt(original, (current + 2), 2, "EY", "")
-							&& (GetAt(original, current + 1) != 'Y')
-							&& !SlavoGermanic(original))
+					/* not e.g. 'cagney' */
+					else if (!StringAt(original, (current + 2), 2, "EY", "")
+						&& (GetAt(original, current + 1) != 'Y')
+						&& !SlavoGermanic(original))
 					{
 						MetaphAdd(primary, "N");
 						MetaphAdd(secondary, "KN");
