- patchlevel 315
This commit is contained in:
parent
15e452f149
commit
09bbe034cc
132
7.1.315
Normal file
132
7.1.315
Normal file
@ -0,0 +1,132 @@
|
||||
To: vim-dev@vim.org
|
||||
Subject: Patch 7.1.315
|
||||
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.315
|
||||
Problem: Crash with specific search pattern using look-behind match.
|
||||
(Andreas Politz)
|
||||
Solution: Also save the value of "need_clear_subexpr".
|
||||
Files: src/regexp.c
|
||||
|
||||
|
||||
*** ../vim-7.1.314/src/regexp.c Wed Apr 9 12:14:44 2008
|
||||
--- src/regexp.c Sun Jun 15 14:16:40 2008
|
||||
***************
|
||||
*** 3044,3049 ****
|
||||
--- 3044,3050 ----
|
||||
{
|
||||
regsave_T save_after;
|
||||
regsave_T save_behind;
|
||||
+ int save_need_clear_subexpr;
|
||||
save_se_T save_start[NSUBEXP];
|
||||
save_se_T save_end[NSUBEXP];
|
||||
} regbehind_T;
|
||||
***************
|
||||
*** 5858,5874 ****
|
||||
{
|
||||
int i;
|
||||
|
||||
! for (i = 0; i < NSUBEXP; ++i)
|
||||
{
|
||||
! if (REG_MULTI)
|
||||
! {
|
||||
! bp->save_start[i].se_u.pos = reg_startpos[i];
|
||||
! bp->save_end[i].se_u.pos = reg_endpos[i];
|
||||
! }
|
||||
! else
|
||||
{
|
||||
! bp->save_start[i].se_u.ptr = reg_startp[i];
|
||||
! bp->save_end[i].se_u.ptr = reg_endp[i];
|
||||
}
|
||||
}
|
||||
}
|
||||
--- 5859,5881 ----
|
||||
{
|
||||
int i;
|
||||
|
||||
! /* When "need_clear_subexpr" is set we don't need to save the values, only
|
||||
! * remember that this flag needs to be set again when restoring. */
|
||||
! bp->save_need_clear_subexpr = need_clear_subexpr;
|
||||
! if (!need_clear_subexpr)
|
||||
{
|
||||
! for (i = 0; i < NSUBEXP; ++i)
|
||||
{
|
||||
! if (REG_MULTI)
|
||||
! {
|
||||
! bp->save_start[i].se_u.pos = reg_startpos[i];
|
||||
! bp->save_end[i].se_u.pos = reg_endpos[i];
|
||||
! }
|
||||
! else
|
||||
! {
|
||||
! bp->save_start[i].se_u.ptr = reg_startp[i];
|
||||
! bp->save_end[i].se_u.ptr = reg_endp[i];
|
||||
! }
|
||||
}
|
||||
}
|
||||
}
|
||||
***************
|
||||
*** 5882,5898 ****
|
||||
{
|
||||
int i;
|
||||
|
||||
! for (i = 0; i < NSUBEXP; ++i)
|
||||
{
|
||||
! if (REG_MULTI)
|
||||
! {
|
||||
! reg_startpos[i] = bp->save_start[i].se_u.pos;
|
||||
! reg_endpos[i] = bp->save_end[i].se_u.pos;
|
||||
! }
|
||||
! else
|
||||
{
|
||||
! reg_startp[i] = bp->save_start[i].se_u.ptr;
|
||||
! reg_endp[i] = bp->save_end[i].se_u.ptr;
|
||||
}
|
||||
}
|
||||
}
|
||||
--- 5889,5910 ----
|
||||
{
|
||||
int i;
|
||||
|
||||
! /* Only need to restore saved values when they are not to be cleared. */
|
||||
! need_clear_subexpr = bp->save_need_clear_subexpr;
|
||||
! if (!need_clear_subexpr)
|
||||
{
|
||||
! for (i = 0; i < NSUBEXP; ++i)
|
||||
{
|
||||
! if (REG_MULTI)
|
||||
! {
|
||||
! reg_startpos[i] = bp->save_start[i].se_u.pos;
|
||||
! reg_endpos[i] = bp->save_end[i].se_u.pos;
|
||||
! }
|
||||
! else
|
||||
! {
|
||||
! reg_startp[i] = bp->save_start[i].se_u.ptr;
|
||||
! reg_endp[i] = bp->save_end[i].se_u.ptr;
|
||||
! }
|
||||
}
|
||||
}
|
||||
}
|
||||
*** ../vim-7.1.314/src/version.c Mon Jun 9 17:07:13 2008
|
||||
--- src/version.c Sun Jun 15 14:12:54 2008
|
||||
***************
|
||||
*** 668,669 ****
|
||||
--- 673,676 ----
|
||||
{ /* Add new patch number below this line */
|
||||
+ /**/
|
||||
+ 315,
|
||||
/**/
|
||||
|
||||
--
|
||||
Tips for aliens in New York: Land anywhere. Central Park, anywhere.
|
||||
No one will care or indeed even notice.
|
||||
-- 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 ///
|
Loading…
Reference in New Issue
Block a user