diff --git a/7.1.247 b/7.1.247
new file mode 100644
index 0000000..ca65c9d
--- /dev/null
+++ b/7.1.247
@@ -0,0 +1,162 @@
+To: vim-dev@vim.org
+Subject: Patch 7.1.247
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=ISO-8859-1
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.1.247
+Problem:    When using Netbeans backspacing in Insert mode skips a character
+	    now and then. (Ankit Jain)
+Solution:   Avoid calling netbeans_removed(), it frees the line pointer.
+	    (partly by Dominique Pelle).
+Files:	    src/misc1.c
+
+
+*** ../vim-7.1.246/src/misc1.c	Sat Jan 19 15:55:51 2008
+--- src/misc1.c	Wed Feb 13 10:56:16 2008
+***************
+*** 2270,2282 ****
+      /*
+       * If the old line has been allocated the deletion can be done in the
+       * existing line. Otherwise a new line has to be allocated
+       */
+-     was_alloced = ml_line_alloced();	    /* check if oldp was allocated */
+  #ifdef FEAT_NETBEANS_INTG
+!     if (was_alloced && usingNetbeans)
+! 	netbeans_removed(curbuf, lnum, col, count);
+!     /* else is handled by ml_replace() */
+  #endif
+      if (was_alloced)
+  	newp = oldp;			    /* use same allocated memory */
+      else
+--- 2270,2285 ----
+      /*
+       * If the old line has been allocated the deletion can be done in the
+       * existing line. Otherwise a new line has to be allocated
++      * Can't do this when using Netbeans, because we would need to invoke
++      * netbeans_removed(), which deallocates the line.  Let ml_replace() take
++      * care of notifiying Netbeans.
+       */
+  #ifdef FEAT_NETBEANS_INTG
+!     if (usingNetbeans)
+! 	was_alloced = FALSE;
+!     else
+  #endif
++ 	was_alloced = ml_line_alloced();    /* check if oldp was allocated */
+      if (was_alloced)
+  	newp = oldp;			    /* use same allocated memory */
+      else
+***************
+*** 3978,3984 ****
+  	    /* remove trailing path separator */
+  #ifndef MACOS_CLASSIC
+  	    /* With MacOS path (with  colons) the final colon is required */
+! 	    /* to avoid confusion between absoulute and relative path */
+  	    if (pend > p && after_pathsep(p, pend))
+  		--pend;
+  #endif
+--- 3981,3987 ----
+  	    /* remove trailing path separator */
+  #ifndef MACOS_CLASSIC
+  	    /* With MacOS path (with  colons) the final colon is required */
+! 	    /* to avoid confusion between absolute and relative path */
+  	    if (pend > p && after_pathsep(p, pend))
+  		--pend;
+  #endif
+***************
+*** 5689,5695 ****
+  	    else if (lookfor_ctor_init || class_or_struct)
+  	    {
+  		/* we have something found, that looks like the start of
+! 		 * cpp-base-class-declaration or contructor-initialization */
+  		cpp_base_class = TRUE;
+  		lookfor_ctor_init = class_or_struct = FALSE;
+  		*col = 0;
+--- 5692,5698 ----
+  	    else if (lookfor_ctor_init || class_or_struct)
+  	    {
+  		/* we have something found, that looks like the start of
+! 		 * cpp-base-class-declaration or constructor-initialization */
+  		cpp_base_class = TRUE;
+  		lookfor_ctor_init = class_or_struct = FALSE;
+  		*col = 0;
+***************
+*** 6146,6152 ****
+      pos_T	our_paren_pos;
+      char_u	*start;
+      int		start_brace;
+! #define BRACE_IN_COL0		1	    /* '{' is in comumn 0 */
+  #define BRACE_AT_START		2	    /* '{' is at start of line */
+  #define BRACE_AT_END		3	    /* '{' is at end of line */
+      linenr_T	ourscope;
+--- 6149,6155 ----
+      pos_T	our_paren_pos;
+      char_u	*start;
+      int		start_brace;
+! #define BRACE_IN_COL0		1	    /* '{' is in column 0 */
+  #define BRACE_AT_START		2	    /* '{' is at start of line */
+  #define BRACE_AT_END		3	    /* '{' is at end of line */
+      linenr_T	ourscope;
+***************
+*** 6369,6375 ****
+  		    if (curwin->w_cursor.lnum > 1)
+  		    {
+  			/* If the start comment string matches in the previous
+! 			 * line, use the indent of that line pluss offset.  If
+  			 * the middle comment string matches in the previous
+  			 * line, use the indent of that line.  XXX */
+  			look = skipwhite(ml_get(curwin->w_cursor.lnum - 1));
+--- 6372,6378 ----
+  		    if (curwin->w_cursor.lnum > 1)
+  		    {
+  			/* If the start comment string matches in the previous
+! 			 * line, use the indent of that line plus offset.  If
+  			 * the middle comment string matches in the previous
+  			 * line, use the indent of that line.  XXX */
+  			look = skipwhite(ml_get(curwin->w_cursor.lnum - 1));
+***************
+*** 8222,8228 ****
+  
+  		    if (*that && *that != ';') /* not a comment line */
+  		    {
+! 			/* test *that != '(' to accomodate first let/do
+  			 * argument if it is more than one line */
+  			if (!vi_lisp && *that != '(' && *that != '[')
+  			    firsttry++;
+--- 8225,8231 ----
+  
+  		    if (*that && *that != ';') /* not a comment line */
+  		    {
+! 			/* test *that != '(' to accommodate first let/do
+  			 * argument if it is more than one line */
+  			if (!vi_lisp && *that != '(' && *that != '[')
+  			    firsttry++;
+*** ../vim-7.1.246/src/version.c	Wed Feb 13 10:27:28 2008
+--- src/version.c	Wed Feb 13 10:56:42 2008
+***************
+*** 668,669 ****
+--- 668,671 ----
+  {   /* Add new patch number below this line */
++ /**/
++     247,
+  /**/
+
+-- 
+Far back in the mists of ancient time, in the great and glorious days of the
+former Galactic Empire, life was wild, rich and largely tax free.
+Mighty starships plied their way between exotic suns, seeking adventure and
+reward among the furthest reaches of Galactic space.  In those days, spirits
+were brave, the stakes were high, men were real men, women were real women
+and small furry creatures from Alpha Centauri were real small furry creatures
+from Alpha Centauri.  And all dared to brave unknown terrors, to do mighty
+deeds, to boldly split infinitives that no man had split before -- and thus
+was the Empire forged.
+		-- Douglas Adams, "The Hitchhiker's Guide to the Galaxy"
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
+///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\        download, build and distribute -- http://www.A-A-P.org        ///
+ \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///