1
0
forked from aniani/vim

updated for version 7.2.359

Problem:    Crash when using the Netbeans join command.
Solution:   Make sure the ml_flush_line() function is not used recursively.
            (Xavier de Gaye)
This commit is contained in:
Bram Moolenaar
2010-02-11 18:54:43 +01:00
parent b4990bf90b
commit 0ca4b350f0
2 changed files with 11 additions and 0 deletions

View File

@@ -3087,12 +3087,19 @@ ml_flush_line(buf)
int start;
int count;
int i;
static int entered = FALSE;
if (buf->b_ml.ml_line_lnum == 0 || buf->b_ml.ml_mfp == NULL)
return; /* nothing to do */
if (buf->b_ml.ml_flags & ML_LINE_DIRTY)
{
/* This code doesn't work recursively, but Netbeans may call back here
* when obtaining the cursor position. */
if (entered)
return;
entered = TRUE;
lnum = buf->b_ml.ml_line_lnum;
new_line = buf->b_ml.ml_line_ptr;
@@ -3160,6 +3167,8 @@ ml_flush_line(buf)
}
}
vim_free(new_line);
entered = FALSE;
}
buf->b_ml.ml_line_lnum = 0;

View File

@@ -681,6 +681,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
359,
/**/
358,
/**/