diff --git a/7.4.269 b/7.4.269
new file mode 100644
index 0000000..80f29a4
--- /dev/null
+++ b/7.4.269
@@ -0,0 +1,213 @@
+To: vim_dev@googlegroups.com
+Subject: Patch 7.4.269
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.4.269
+Problem:    CTRL-U in Insert mode does not work after using a cursor key.
+	    (Pine Wu)
+Solution:   Use the original insert start position. (Christian Brabandt)
+Files:	    src/edit.c, src/testdir/test29.in, src/testdir/test29.ok
+
+
+*** ../vim-7.4.268/src/edit.c	2014-04-29 12:15:22.852032651 +0200
+--- src/edit.c	2014-04-29 14:44:07.867876234 +0200
+***************
+*** 8760,8767 ****
+  		((curwin->w_cursor.lnum == 1 && curwin->w_cursor.col == 0)
+  		    || (!can_bs(BS_START)
+  			&& (arrow_used
+! 			    || (curwin->w_cursor.lnum == Insstart.lnum
+! 				&& curwin->w_cursor.col <= Insstart.col)))
+  		    || (!can_bs(BS_INDENT) && !arrow_used && ai_col > 0
+  					 && curwin->w_cursor.col <= ai_col)
+  		    || (!can_bs(BS_EOL) && curwin->w_cursor.col == 0))))
+--- 8760,8767 ----
+  		((curwin->w_cursor.lnum == 1 && curwin->w_cursor.col == 0)
+  		    || (!can_bs(BS_START)
+  			&& (arrow_used
+! 			    || (curwin->w_cursor.lnum == Insstart_orig.lnum
+! 				&& curwin->w_cursor.col <= Insstart_orig.col)))
+  		    || (!can_bs(BS_INDENT) && !arrow_used && ai_col > 0
+  					 && curwin->w_cursor.col <= ai_col)
+  		    || (!can_bs(BS_EOL) && curwin->w_cursor.col == 0))))
+***************
+*** 8812,8819 ****
+       */
+      if (curwin->w_cursor.col == 0)
+      {
+! 	lnum = Insstart.lnum;
+! 	if (curwin->w_cursor.lnum == Insstart.lnum
+  #ifdef FEAT_RIGHTLEFT
+  			|| revins_on
+  #endif
+--- 8812,8819 ----
+       */
+      if (curwin->w_cursor.col == 0)
+      {
+! 	lnum = Insstart_orig.lnum;
+! 	if (curwin->w_cursor.lnum == lnum
+  #ifdef FEAT_RIGHTLEFT
+  			|| revins_on
+  #endif
+***************
+*** 8822,8829 ****
+  	    if (u_save((linenr_T)(curwin->w_cursor.lnum - 2),
+  			       (linenr_T)(curwin->w_cursor.lnum + 1)) == FAIL)
+  		return FALSE;
+! 	    --Insstart.lnum;
+! 	    Insstart.col = MAXCOL;
+  	}
+  	/*
+  	 * In replace mode:
+--- 8822,8829 ----
+  	    if (u_save((linenr_T)(curwin->w_cursor.lnum - 2),
+  			       (linenr_T)(curwin->w_cursor.lnum + 1)) == FAIL)
+  		return FALSE;
+! 	    --Insstart_orig.lnum;
+! 	    Insstart_orig.col = MAXCOL;
+  	}
+  	/*
+  	 * In replace mode:
+***************
+*** 8981,8989 ****
+  	    while (vcol < want_vcol)
+  	    {
+  		/* Remember the first char we inserted */
+! 		if (curwin->w_cursor.lnum == Insstart.lnum
+! 				   && curwin->w_cursor.col < Insstart.col)
+! 		    Insstart.col = curwin->w_cursor.col;
+  
+  #ifdef FEAT_VREPLACE
+  		if (State & VREPLACE_FLAG)
+--- 8981,8989 ----
+  	    while (vcol < want_vcol)
+  	    {
+  		/* Remember the first char we inserted */
+! 		if (curwin->w_cursor.lnum == Insstart_orig.lnum
+! 				   && curwin->w_cursor.col < Insstart_orig.col)
+! 		    Insstart_orig.col = curwin->w_cursor.col;
+  
+  #ifdef FEAT_VREPLACE
+  		if (State & VREPLACE_FLAG)
+***************
+*** 9071,9078 ****
+  		revins_on ||
+  #endif
+  		(curwin->w_cursor.col > mincol
+! 		 && (curwin->w_cursor.lnum != Insstart.lnum
+! 		     || curwin->w_cursor.col != Insstart.col)));
+  	did_backspace = TRUE;
+      }
+  #ifdef FEAT_SMARTINDENT
+--- 9071,9078 ----
+  		revins_on ||
+  #endif
+  		(curwin->w_cursor.col > mincol
+! 		 && (curwin->w_cursor.lnum != Insstart_orig.lnum
+! 		     || curwin->w_cursor.col != Insstart_orig.col)));
+  	did_backspace = TRUE;
+      }
+  #ifdef FEAT_SMARTINDENT
+***************
+*** 9090,9098 ****
+      AppendCharToRedobuff(c);
+  
+      /* If deleted before the insertion point, adjust it */
+!     if (curwin->w_cursor.lnum == Insstart.lnum
+! 				       && curwin->w_cursor.col < Insstart.col)
+! 	Insstart.col = curwin->w_cursor.col;
+  
+      /* vi behaviour: the cursor moves backward but the character that
+       *		     was there remains visible
+--- 9090,9098 ----
+      AppendCharToRedobuff(c);
+  
+      /* If deleted before the insertion point, adjust it */
+!     if (curwin->w_cursor.lnum == Insstart_orig.lnum
+! 				       && curwin->w_cursor.col < Insstart_orig.col)
+! 	Insstart_orig.col = curwin->w_cursor.col;
+  
+      /* vi behaviour: the cursor moves backward but the character that
+       *		     was there remains visible
+*** ../vim-7.4.268/src/testdir/test29.in	2012-06-13 13:48:26.000000000 +0200
+--- src/testdir/test29.in	2014-04-29 14:31:23.619889628 +0200
+***************
+*** 102,107 ****
+--- 102,135 ----
+  }
+  
+  STARTTEST
++ :" Test with backspace set to the non-compatible setting
++ /^\d\+ this
++ :set cp bs=2
++ Avim1
++ Avim2u
++ :set cpo-=<
++ :inoremap <c-u> <left><c-u>
++ Avim3
++ :iunmap <c-u>
++ Avim4
++ :" Test with backspace set to the compatible setting
++ :set bs=
++ A vim5A
++ A vim6Azweiu
++ :inoremap <c-u> <left><c-u>
++ A vim7
++ :set cp
++ ENDTEST
++ 1 this shouldn't be deleted
++ 2 this shouldn't be deleted
++ 3 this shouldn't be deleted
++ 4 this should be deleted
++ 5 this shouldn't be deleted
++ 6 this shouldn't be deleted
++ 7 this shouldn't be deleted
++ 8 this shouldn't be deleted (not touched yet)
++ 
++ STARTTEST
+  /^{/+1
+  :set comments=sO:*\ -,mO:*\ \ ,exO:*/
+  :set comments+=s1:/*,mb:*,ex:*/,://
+*** ../vim-7.4.268/src/testdir/test29.ok	2012-06-13 13:48:26.000000000 +0200
+--- src/testdir/test29.ok	2014-04-29 14:31:23.623889628 +0200
+***************
+*** 62,67 ****
+--- 62,76 ----
+      action();
+  }
+  
++ 1 this shouldn't be deleted
++ 2 this shouldn't be deleted
++ 3 this shouldn't be deleted
++ 4 this should be deleted3
++ 
++ 6 this shouldn't be deleted vim5
++ 7 this shouldn't be deleted vim6
++ 8 this shouldn't be deleted (not touched yet) vim7
++ 
+  
+  {
+  /* Make sure the previous comment leader is not removed.  */
+*** ../vim-7.4.268/src/version.c	2014-04-29 14:02:42.547919791 +0200
+--- src/version.c	2014-04-29 14:42:09.083878315 +0200
+***************
+*** 736,737 ****
+--- 736,739 ----
+  {   /* Add new patch number below this line */
++ /**/
++     269,
+  /**/
+
+-- 
+From "know your smileys":
+ [:-)	Frankenstein's monster
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\  an exciting new programming language -- http://www.Zimbu.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///