diff --git a/src/edit.c b/src/edit.c
index 8746436..f29fbc7 100644
--- a/src/edit.c
+++ b/src/edit.c
@@ -1374,7 +1374,7 @@
 		goto doESCkey;
 	    }
 #endif
-	    if (ins_eol(c) && !p_im)
+	    if (ins_eol(c) == FAIL && !p_im)
 		goto doESCkey;	    /* out of memory */
 	    auto_format(FALSE, FALSE);
 	    inserted_space = FALSE;
@@ -10201,7 +10201,7 @@
 
 /*
  * Handle CR or NL in insert mode.
- * Return TRUE when out of memory or can't undo.
+ * Return FAIL when out of memory or can't undo.
  */
     static int
 ins_eol(int c)
@@ -10266,7 +10266,7 @@
     foldOpenCursor();
 #endif
 
-    return (!i);
+    return i;
 }
 
 #ifdef FEAT_DIGRAPHS
diff --git a/src/misc1.c b/src/misc1.c
index 531c5e4..de79c8e 100644
--- a/src/misc1.c
+++ b/src/misc1.c
@@ -588,7 +588,7 @@
  * "second_line_indent": indent for after ^^D in Insert mode or if flag
  *			  OPENLINE_COM_LIST
  *
- * Return TRUE for success, FALSE for failure
+ * Return OK for success, FAIL for failure
  */
     int
 open_line(
@@ -606,7 +606,7 @@
     int		newindent = 0;		/* auto-indent of the new line */
     int		n;
     int		trunc_line = FALSE;	/* truncate current line afterwards */
-    int		retval = FALSE;		/* return value, default is FAIL */
+    int		retval = FAIL;		/* return value */
 #ifdef FEAT_COMMENTS
     int		extra_len = 0;		/* length of p_extra string */
     int		lead_len;		/* length of comment leader */
@@ -1642,7 +1642,7 @@
     }
 #endif
 
-    retval = TRUE;		/* success! */
+    retval = OK;		/* success! */
 theend:
     curbuf->b_p_pi = saved_pi;
     vim_free(saved_line);
diff --git a/src/normal.c b/src/normal.c
index 84867b5..be0e75e 100644
--- a/src/normal.c
+++ b/src/normal.c
@@ -8491,7 +8491,7 @@
 #ifdef FEAT_COMMENTS
 		    has_format_option(FO_OPEN_COMS) ? OPENLINE_DO_COM :
 #endif
-		    0, 0))
+		    0, 0) == OK)
 	{
 #ifdef FEAT_CONCEAL
 	    if (curwin->w_p_cole > 0 && oldline != curwin->w_cursor.lnum)
diff --git a/src/version.c b/src/version.c
index f0cb304..dfd82f9 100644
--- a/src/version.c
+++ b/src/version.c
@@ -762,6 +762,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1758,
+/**/
     1757,
 /**/
     1756,
