- patchlevel 192

- test fix for highlighting problems with curly brackets in #define
    (#203577)
This commit is contained in:
Karsten Hopp 2007-02-12 15:09:52 +00:00
parent 0a3746605e
commit c29414aaef
4 changed files with 190 additions and 3 deletions

158
7.0.192 Normal file
View File

@ -0,0 +1,158 @@
To: vim-dev@vim.org
Subject: patch 7.0.192
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.0.192
Problem: When 'swapfile' is switched off in an empty file it is possible
that not all blocks are loaded into memory, causing ml_get errors
later.
Solution: Rename "dont_release" to "mf_dont_release" and also use it to
avoid using the cached line and locked block.
Files: src/globals.h, src/memfile.c, src/memline.c
*** ../vim-7.0.191/src/globals.h Tue Jan 9 15:15:36 2007
--- src/globals.h Wed Feb 7 03:29:52 2007
***************
*** 554,559 ****
--- 554,563 ----
EXTERN buf_T *firstbuf INIT(= NULL); /* first buffer */
EXTERN buf_T *lastbuf INIT(= NULL); /* last buffer */
EXTERN buf_T *curbuf INIT(= NULL); /* currently active buffer */
+
+ /* Flag that is set when switching off 'swapfile'. It means that all blocks
+ * are to be loaded into memory. Shouldn't be global... */
+ EXTERN int mf_dont_release INIT(= FALSE); /* don't release blocks */
/*
* List of files being edited (global argument list). curwin->w_alist points
*** ../vim-7.0.191/src/memfile.c Tue Nov 7 18:02:19 2006
--- src/memfile.c Wed Feb 7 03:22:11 2007
***************
*** 76,82 ****
#define MEMFILE_PAGE_SIZE 4096 /* default page size */
static long_u total_mem_used = 0; /* total memory used for memfiles */
- static int dont_release = FALSE; /* don't release blocks */
static void mf_ins_hash __ARGS((memfile_T *, bhdr_T *));
static void mf_rem_hash __ARGS((memfile_T *, bhdr_T *));
--- 76,81 ----
***************
*** 279,288 ****
if (getlines)
{
/* get all blocks in memory by accessing all lines (clumsy!) */
! dont_release = TRUE;
for (lnum = 1; lnum <= buf->b_ml.ml_line_count; ++lnum)
(void)ml_get_buf(buf, lnum, FALSE);
! dont_release = FALSE;
/* TODO: should check if all blocks are really in core */
}
--- 278,287 ----
if (getlines)
{
/* get all blocks in memory by accessing all lines (clumsy!) */
! mf_dont_release = TRUE;
for (lnum = 1; lnum <= buf->b_ml.ml_line_count; ++lnum)
(void)ml_get_buf(buf, lnum, FALSE);
! mf_dont_release = FALSE;
/* TODO: should check if all blocks are really in core */
}
***************
*** 830,836 ****
buf_T *buf;
/* don't release while in mf_close_file() */
! if (dont_release)
return NULL;
/*
--- 829,835 ----
buf_T *buf;
/* don't release while in mf_close_file() */
! if (mf_dont_release)
return NULL;
/*
*** ../vim-7.0.191/src/memline.c Tue Jan 9 15:15:36 2007
--- src/memline.c Wed Feb 7 03:29:31 2007
***************
*** 2074,2081 ****
/*
* See if it is the same line as requested last time.
* Otherwise may need to flush last used line.
*/
! if (buf->b_ml.ml_line_lnum != lnum)
{
ml_flush_line(buf);
--- 2074,2083 ----
/*
* See if it is the same line as requested last time.
* Otherwise may need to flush last used line.
+ * Don't use the last used line when 'swapfile' is reset, need to load all
+ * blocks.
*/
! if (buf->b_ml.ml_line_lnum != lnum || mf_dont_release)
{
ml_flush_line(buf);
***************
*** 3200,3212 ****
* If not, flush and release the locked block.
* Don't do this for ML_INSERT_SAME, because the stack need to be updated.
* Don't do this for ML_FLUSH, because we want to flush the locked block.
*/
if (buf->b_ml.ml_locked)
{
! if (ML_SIMPLE(action) && buf->b_ml.ml_locked_low <= lnum
! && buf->b_ml.ml_locked_high >= lnum)
{
! /* remember to update pointer blocks and stack later */
if (action == ML_INSERT)
{
++(buf->b_ml.ml_locked_lineadd);
--- 3202,3217 ----
* If not, flush and release the locked block.
* Don't do this for ML_INSERT_SAME, because the stack need to be updated.
* Don't do this for ML_FLUSH, because we want to flush the locked block.
+ * Don't do this when 'swapfile' is reset, we want to load all the blocks.
*/
if (buf->b_ml.ml_locked)
{
! if (ML_SIMPLE(action)
! && buf->b_ml.ml_locked_low <= lnum
! && buf->b_ml.ml_locked_high >= lnum
! && !mf_dont_release)
{
! /* remember to update pointer blocks and stack later */
if (action == ML_INSERT)
{
++(buf->b_ml.ml_locked_lineadd);
*** ../vim-7.0.191/src/version.c Sun Feb 4 02:59:04 2007
--- src/version.c Wed Feb 7 03:40:28 2007
***************
*** 668,669 ****
--- 668,671 ----
{ /* Add new patch number below this line */
+ /**/
+ 192,
/**/
--
From "know your smileys":
%-) After staring at screen for 15 hours
/// 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 ///

View File

@ -221,3 +221,4 @@ Individual patches for Vim 7.0:
2290 7.0.189 translated message about finding matches is truncated 2290 7.0.189 translated message about finding matches is truncated
1778 7.0.190 "syntax spell default" results in an error message 1778 7.0.190 "syntax spell default" results in an error message
10918 7.0.191 the items used by getqflist() and setqflist() don't match 10918 7.0.191 the items used by getqflist() and setqflist() don't match
5114 7.0.192 ml_get errors when resetting 'swapfile' in empty file

View File

@ -0,0 +1,20 @@
--- vim70/runtime/syntax/c.vim.bracket 2007-02-12 09:53:30.000000000 -0500
+++ vim70/runtime/syntax/c.vim 2007-02-12 09:54:28.000000000 -0500
@@ -64,6 +64,8 @@
endif
endif
+syntax region cBlock start="{" end="}" transparent fold
+
"catch errors caused by wrong parenthesis and brackets
" also accept <% for {, %> for }, <: for [ and :> for ] (C99)
" But avoid matching <::.
@@ -148,8 +150,6 @@
syntax match cCommentError display "\*/"
syntax match cCommentStartError display "/\*"me=e-1 contained
-syntax region cBlock start="{" end="}" transparent fold
-
syn keyword cOperator sizeof
if exists("c_gnu")
syn keyword cStatement __asm__

View File

@ -14,13 +14,13 @@
#used for pre-releases: #used for pre-releases:
%define beta %{nil} %define beta %{nil}
%define vimdir vim70%{?beta} %define vimdir vim70%{?beta}
%define patchlevel 191 %define patchlevel 192
Summary: The VIM editor Summary: The VIM editor
URL: http://www.vim.org/ URL: http://www.vim.org/
Name: vim Name: vim
Version: %{baseversion}.%{beta}%{patchlevel} Version: %{baseversion}.%{beta}%{patchlevel}
Release: 2%{?dist} Release: 1%{?dist}
License: GPL License: GPL
Group: Applications/Editors Group: Applications/Editors
Source0: ftp://ftp.vim.org/pub/vim/unix/vim-%{baseversion}%{?beta}%{?CVSDATE}.tar.bz2 Source0: ftp://ftp.vim.org/pub/vim/unix/vim-%{baseversion}%{?beta}%{?CVSDATE}.tar.bz2
@ -239,6 +239,7 @@ Patch188: ftp://ftp.vim.org/pub/vim/patches/7.0/7.0.188
Patch189: ftp://ftp.vim.org/pub/vim/patches/7.0/7.0.189 Patch189: ftp://ftp.vim.org/pub/vim/patches/7.0/7.0.189
Patch190: ftp://ftp.vim.org/pub/vim/patches/7.0/7.0.190 Patch190: ftp://ftp.vim.org/pub/vim/patches/7.0/7.0.190
Patch191: ftp://ftp.vim.org/pub/vim/patches/7.0/7.0.191 Patch191: ftp://ftp.vim.org/pub/vim/patches/7.0/7.0.191
Patch192: ftp://ftp.vim.org/pub/vim/patches/7.0/7.0.192
Patch3000: vim-7.0-syntax.patch Patch3000: vim-7.0-syntax.patch
#Patch3001: vim-6.2-rh1.patch #Patch3001: vim-6.2-rh1.patch
@ -252,6 +253,7 @@ Patch3009: vim-7.0-warning.patch
Patch3010: vim-7.0-syncolor.patch Patch3010: vim-7.0-syncolor.patch
Patch3011: vim-7.0-vimspelltypo.patch Patch3011: vim-7.0-vimspelltypo.patch
Patch3012: vim-7.0-specedit.patch Patch3012: vim-7.0-specedit.patch
Patch3013: vim-7.0-bracket-203577.patch
# #
Patch3100: vim-selinux.patch Patch3100: vim-selinux.patch
Patch3101: vim-selinux2.patch Patch3101: vim-selinux2.patch
@ -589,7 +591,8 @@ perl -pi -e "s,bin/nawk,bin/awk,g" runtime/tools/mve.awk
%patch188 -p0 %patch188 -p0
%patch189 -p0 %patch189 -p0
%patch190 -p0 %patch190 -p0
%patch191 -p0 -b .191 %patch191 -p0
%patch192 -p0
# install spell files # install spell files
%if %{withvimspell} %if %{withvimspell}
@ -609,6 +612,7 @@ perl -pi -e "s,bin/nawk,bin/awk,g" runtime/tools/mve.awk
%patch3010 -p1 %patch3010 -p1
%patch3011 -p1 %patch3011 -p1
%patch3012 -p1 %patch3012 -p1
%patch3013 -p1
%if %{WITH_SELINUX} %if %{WITH_SELINUX}
%patch3100 -p1 %patch3100 -p1
@ -962,6 +966,10 @@ rm -rf $RPM_BUILD_ROOT
%{_datadir}/icons/hicolor/*/apps/* %{_datadir}/icons/hicolor/*/apps/*
%changelog %changelog
* Mon Feb 12 2007 Karsten Hopp <karsten@redhat.com> 7.0.192-1
- patchlevel 192
- test fix for highlighting problems with curly brackets in #define (#203577)
* Tue Feb 06 2007 Karsten Hopp <karsten@redhat.com> 7.0.191-2 * Tue Feb 06 2007 Karsten Hopp <karsten@redhat.com> 7.0.191-2
- uses ncurses instead of ncursesw - uses ncurses instead of ncursesw