Changeset c7101cf


Ignore:
Timestamp:
Nov 29, 2006, 4:12:59 PM (17 years ago)
Author:
Jim Gifford <clfs@…>
Branches:
clfs-1.2, clfs-2.1, clfs-3.0.0-systemd, clfs-3.0.0-sysvinit, master, systemd, sysvinit
Children:
c5d783f
Parents:
aeb9616
Message:

Updated vim patch

File:
1 moved

Legend:

Unmodified
Added
Removed
  • patches/vim-7.0-fixes-20.patch

    raeb9616 rc7101cf  
    11Submitted By: Jim Gifford (jim at linuxfromscratch dot org)
    2 Date: 2006-11-21
     2Date: 11-29-2006
    33Initial Package Version: 7.0
    44Origin: Upstream
    55Upstream Status: Applied
    6 Description: Contains all upstream patches up to 7.0.168
     6Description: Contains all upstream patches up to 7.0.174
    77             The following patches were skipped
    8                 005 027 028 032 045 057 065 074 108 130 131 132 138 156 161
     8             005 027 028 032 045 057 065 074 108 130 131 132 138 156 161 170 171
    99
    1010diff -Naur vim70.orig/configure vim70/configure
    1111--- vim70.orig/configure        2004-07-05 02:02:24.000000000 -0700
    12 +++ vim70/configure     2006-11-21 22:40:14.000000000 -0800
     12+++ vim70/configure     2006-11-29 16:09:55.000000000 -0800
    1313@@ -3,4 +3,4 @@
    1414 # This is just a stub for the Unix configure script, to provide support for
     
    1919diff -Naur vim70.orig/runtime/autoload/ccomplete.vim vim70/runtime/autoload/ccomplete.vim
    2020--- vim70.orig/runtime/autoload/ccomplete.vim   2006-05-03 07:35:56.000000000 -0700
    21 +++ vim70/runtime/autoload/ccomplete.vim        2006-11-21 22:37:49.000000000 -0800
     21+++ vim70/runtime/autoload/ccomplete.vim        2006-11-29 16:09:49.000000000 -0800
    2222@@ -1,7 +1,7 @@
    2323 " Vim completion script
     
    4040diff -Naur vim70.orig/runtime/autoload/gzip.vim vim70/runtime/autoload/gzip.vim
    4141--- vim70.orig/runtime/autoload/gzip.vim        2006-03-31 07:12:15.000000000 -0800
    42 +++ vim70/runtime/autoload/gzip.vim     2006-11-21 22:43:59.000000000 -0800
     42+++ vim70/runtime/autoload/gzip.vim     2006-11-29 16:10:07.000000000 -0800
    4343@@ -1,6 +1,6 @@
    4444 " Vim autoload file for editing compressed files.
     
    101101diff -Naur vim70.orig/runtime/autoload/paste.vim vim70/runtime/autoload/paste.vim
    102102--- vim70.orig/runtime/autoload/paste.vim       2006-04-21 11:31:01.000000000 -0700
    103 +++ vim70/runtime/autoload/paste.vim    2006-11-21 22:39:28.000000000 -0800
     103+++ vim70/runtime/autoload/paste.vim    2006-11-29 16:09:53.000000000 -0800
    104104@@ -1,6 +1,6 @@
    105105 " Vim support file to help with paste mappings and menus
     
    121121diff -Naur vim70.orig/runtime/autoload/spellfile.vim vim70/runtime/autoload/spellfile.vim
    122122--- vim70.orig/runtime/autoload/spellfile.vim   2006-02-01 04:12:24.000000000 -0800
    123 +++ vim70/runtime/autoload/spellfile.vim        2006-11-21 22:41:53.000000000 -0800
     123+++ vim70/runtime/autoload/spellfile.vim        2006-11-29 16:10:01.000000000 -0800
    124124@@ -1,9 +1,9 @@
    125125 " Vim script to download a missing spell file
     
    177177diff -Naur vim70.orig/runtime/doc/eval.txt vim70/runtime/doc/eval.txt
    178178--- vim70.orig/runtime/doc/eval.txt     2006-05-07 05:16:44.000000000 -0700
    179 +++ vim70/runtime/doc/eval.txt  2006-11-21 22:46:26.000000000 -0800
     179+++ vim70/runtime/doc/eval.txt  2006-11-29 16:10:14.000000000 -0800
    180180@@ -1,4 +1,4 @@
    181181-*eval.txt*      For Vim version 7.0.  Last change: 2006 May 06
     
    257257diff -Naur vim70.orig/runtime/doc/netbeans.txt vim70/runtime/doc/netbeans.txt
    258258--- vim70.orig/runtime/doc/netbeans.txt 2006-05-07 05:16:45.000000000 -0700
    259 +++ vim70/runtime/doc/netbeans.txt      2006-11-21 22:46:48.000000000 -0800
     259+++ vim70/runtime/doc/netbeans.txt      2006-11-29 16:10:15.000000000 -0800
    260260@@ -1,4 +1,4 @@
    261261-*netbeans.txt*  For Vim version 7.0.  Last change: 2006 Mar 09
     
    293293diff -Naur vim70.orig/runtime/menu.vim vim70/runtime/menu.vim
    294294--- vim70.orig/runtime/menu.vim 2006-04-17 06:47:28.000000000 -0700
    295 +++ vim70/runtime/menu.vim      2006-11-21 22:43:44.000000000 -0800
     295+++ vim70/runtime/menu.vim      2006-11-29 16:10:06.000000000 -0800
    296296@@ -2,7 +2,7 @@
    297297 " You can also use this as a start for your own set of menus.
     
    360360diff -Naur vim70.orig/runtime/plugin/matchparen.vim vim70/runtime/plugin/matchparen.vim
    361361--- vim70.orig/runtime/plugin/matchparen.vim    2006-04-27 06:31:26.000000000 -0700
    362 +++ vim70/runtime/plugin/matchparen.vim 2006-11-21 22:42:55.000000000 -0800
     362+++ vim70/runtime/plugin/matchparen.vim 2006-11-29 16:10:05.000000000 -0800
    363363@@ -1,6 +1,6 @@
    364364 " Vim plugin for showing matching parens
     
    403403diff -Naur vim70.orig/runtime/scripts.vim vim70/runtime/scripts.vim
    404404--- vim70.orig/runtime/scripts.vim      2006-03-28 11:30:49.000000000 -0800
    405 +++ vim70/runtime/scripts.vim   2006-11-21 22:40:21.000000000 -0800
     405+++ vim70/runtime/scripts.vim   2006-11-29 16:09:55.000000000 -0800
    406406@@ -1,7 +1,7 @@
    407407 " Vim support file to detect file types in scripts
     
    428428diff -Naur vim70.orig/runtime/tutor/Makefile vim70/runtime/tutor/Makefile
    429429--- vim70.orig/runtime/tutor/Makefile   2004-06-07 07:32:39.000000000 -0700
    430 +++ vim70/runtime/tutor/Makefile        2006-11-21 22:43:03.000000000 -0800
     430+++ vim70/runtime/tutor/Makefile        2006-11-29 16:10:05.000000000 -0800
    431431@@ -2,8 +2,13 @@
    432432 #
     
    462462diff -Naur vim70.orig/runtime/tutor/tutor.gr.utf-8 vim70/runtime/tutor/tutor.gr.utf-8
    463463--- vim70.orig/runtime/tutor/tutor.gr.utf-8     1969-12-31 16:00:00.000000000 -0800
    464 +++ vim70/runtime/tutor/tutor.gr.utf-8  2006-11-21 22:43:03.000000000 -0800
     464+++ vim70/runtime/tutor/tutor.gr.utf-8  2006-11-29 16:10:05.000000000 -0800
    465465@@ -0,0 +1,815 @@
    466466+===============================================================================
     
    14951495diff -Naur vim70.orig/runtime/tutor/tutor.ru.utf-8 vim70/runtime/tutor/tutor.ru.utf-8
    14961496--- vim70.orig/runtime/tutor/tutor.ru.utf-8     1969-12-31 16:00:00.000000000 -0800
    1497 +++ vim70/runtime/tutor/tutor.ru.utf-8  2006-11-21 22:42:05.000000000 -0800
     1497+++ vim70/runtime/tutor/tutor.ru.utf-8  2006-11-29 16:10:01.000000000 -0800
    14981498@@ -0,0 +1,834 @@
    14991499+===============================================================================
     
    24162416diff -Naur vim70.orig/runtime/tutor/tutor.vim vim70/runtime/tutor/tutor.vim
    24172417--- vim70.orig/runtime/tutor/tutor.vim  2006-03-18 12:20:36.000000000 -0800
    2418 +++ vim70/runtime/tutor/tutor.vim       2006-11-21 22:43:03.000000000 -0800
     2418+++ vim70/runtime/tutor/tutor.vim       2006-11-29 16:10:05.000000000 -0800
    24192419@@ -1,6 +1,6 @@
    24202420 " Vim tutor support file
     
    24682468diff -Naur vim70.orig/src/auto/configure vim70/src/auto/configure
    24692469--- vim70.orig/src/auto/configure       2006-05-04 03:46:19.000000000 -0700
    2470 +++ vim70/src/auto/configure    2006-11-21 22:45:22.000000000 -0800
     2470+++ vim70/src/auto/configure    2006-11-29 16:10:11.000000000 -0800
    24712471@@ -4014,7 +4014,7 @@
    24722472       LDFLAGS=$ldflags_save
     
    25092509diff -Naur vim70.orig/src/buffer.c vim70/src/buffer.c
    25102510--- vim70.orig/src/buffer.c     2006-04-26 14:37:23.000000000 -0700
    2511 +++ vim70/src/buffer.c  2006-11-21 22:46:44.000000000 -0800
     2511+++ vim70/src/buffer.c  2006-11-29 16:10:15.000000000 -0800
    25122512@@ -434,12 +434,8 @@
    25132513     if (usingNetbeans)
     
    26602660diff -Naur vim70.orig/src/configure vim70/src/configure
    26612661--- vim70.orig/src/configure    2006-05-07 07:17:49.000000000 -0700
    2662 +++ vim70/src/configure 2006-11-21 22:40:14.000000000 -0800
     2662+++ vim70/src/configure 2006-11-29 16:09:55.000000000 -0800
    26632663@@ -2,5 +2,9 @@
    26642664 # run the automatically generated configure script
     
    26732673diff -Naur vim70.orig/src/configure.in vim70/src/configure.in
    26742674--- vim70.orig/src/configure.in 2006-05-04 03:46:11.000000000 -0700
    2675 +++ vim70/src/configure.in      2006-11-21 22:45:22.000000000 -0800
     2675+++ vim70/src/configure.in      2006-11-29 16:10:11.000000000 -0800
    26762676@@ -508,7 +508,8 @@
    26772677       LDFLAGS=$ldflags_save
     
    27162716diff -Naur vim70.orig/src/edit.c vim70/src/edit.c
    27172717--- vim70.orig/src/edit.c       2006-05-07 04:48:51.000000000 -0700
    2718 +++ vim70/src/edit.c    2006-11-21 22:46:32.000000000 -0800
     2718+++ vim70/src/edit.c    2006-11-29 16:10:14.000000000 -0800
    27192719@@ -129,7 +129,7 @@
    27202720 
     
    33373337diff -Naur vim70.orig/src/eval.c vim70/src/eval.c
    33383338--- vim70.orig/src/eval.c       2006-05-05 10:15:26.000000000 -0700
    3339 +++ vim70/src/eval.c    2006-11-21 22:47:04.000000000 -0800
     3339+++ vim70/src/eval.c    2006-11-29 16:10:23.000000000 -0800
    33403340@@ -166,7 +166,6 @@
    33413341     int                uf_tm_count;    /* nr of calls */
     
    34403440        return;
    34413441 
    3442 @@ -3364,6 +3371,8 @@
     3442@@ -3177,9 +3184,18 @@
     3443            failed = TRUE;
     3444            break;
     3445        }
     3446+
     3447+       /* Handle a function returning a Funcref, Dictionary or List. */
     3448+       if (handle_subscript(&arg, &rettv, !eap->skip, TRUE) == FAIL)
     3449+       {
     3450+           failed = TRUE;
     3451+           break;
     3452+       }
     3453+
     3454        clear_tv(&rettv);
     3455        if (doesrange || eap->skip)
     3456            break;
     3457+
     3458        /* Stop when immediately aborting on error, or when an interrupt
     3459         * occurred or an exception was thrown but not caught.
     3460         * get_func_tv() returned OK, so that the check for trailing
     3461@@ -3364,6 +3380,8 @@
    34433462        hi = hash_find(ht, varname);
    34443463        if (!HASHITEM_EMPTY(hi))
     
    34493468                return FAIL;
    34503469            delete_var(ht, hi);
    3451 @@ -4895,7 +4904,7 @@
     3470@@ -4895,7 +4913,7 @@
    34523471                    {
    34533472                        if (list_append_tv(l, &item->li_tv) == FAIL)
     
    34583477                        }
    34593478                        item = item->li_next;
    3460 @@ -5295,7 +5304,7 @@
     3479@@ -5295,7 +5313,7 @@
    34613480        EMSG2(_("E697: Missing end of List ']': %s"), *arg);
    34623481 failret:
     
    34673486     }
    34683487 
    3469 @@ -5359,8 +5368,8 @@
     3488@@ -5359,8 +5377,8 @@
    34703489 list_unref(l)
    34713490     list_T *l;
     
    34783497 
    34793498 /*
    3480 @@ -5368,14 +5377,12 @@
     3499@@ -5368,14 +5386,12 @@
    34813500  * Ignores the reference count.
    34823501  */
     
    34963515     if (l->lv_used_prev == NULL)
    34973516        first_list = l->lv_used_next;
    3498 @@ -5388,7 +5395,10 @@
     3517@@ -5388,7 +5404,10 @@
    34993518     {
    35003519        /* Remove the item before deleting it. */
     
    35083527     vim_free(l);
    35093528 }
    3510 @@ -5448,6 +5458,8 @@
     3529@@ -5448,6 +5467,8 @@
    35113530 {
    35123531     listitem_T *item1, *item2;
     
    35173536        return FALSE;
    35183537 
    3519 @@ -5484,6 +5496,8 @@
     3538@@ -5484,6 +5505,8 @@
    35203539     dictitem_T *item2;
    35213540     int                todo;
     
    35263545        return FALSE;
    35273546 
    3528 @@ -5516,19 +5530,29 @@
     3547@@ -5516,19 +5539,29 @@
    35293548 {
    35303549     char_u     buf1[NUMBUFLEN], buf2[NUMBUFLEN];
     
    35603579        case VAR_FUNC:
    35613580            return (tv1->vval.v_string != NULL
    3562 @@ -6059,6 +6083,10 @@
     3581@@ -6059,6 +6092,10 @@
    35633582     tabpage_T  *tp;
    35643583 #endif
     
    35713590      * 1. Go through all accessible variables and mark all lists and dicts
    35723591      *    with copyID.
    3573 @@ -6097,7 +6125,10 @@
     3592@@ -6097,7 +6134,10 @@
    35743593     for (dd = first_dict; dd != NULL; )
    35753594        if (dd->dv_copyID != copyID)
     
    35833602 
    35843603            /* restart, next dict may also have been freed */
    3585 @@ -6114,7 +6145,10 @@
     3604@@ -6114,7 +6154,10 @@
    35863605     for (ll = first_list; ll != NULL; )
    35873606        if (ll->lv_copyID != copyID && ll->lv_watch == NULL)
     
    35953614 
    35963615            /* restart, next list may also have been freed */
    3597 @@ -6207,11 +6241,12 @@
     3616@@ -6207,11 +6250,12 @@
    35983617     d = (dict_T *)alloc(sizeof(dict_T));
    35993618     if (d != NULL)
     
    36093628        hash_init(&d->dv_hashtab);
    36103629        d->dv_lock = 0;
    3611 @@ -6229,8 +6264,8 @@
     3630@@ -6229,8 +6273,8 @@
    36123631 dict_unref(d)
    36133632     dict_T *d;
     
    36203639 
    36213640 /*
    3622 @@ -6238,16 +6273,14 @@
     3641@@ -6238,16 +6282,14 @@
    36233642  * Ignores the reference count.
    36243643  */
     
    36403659     if (d->dv_used_prev == NULL)
    36413660        first_dict = d->dv_used_next;
    3642 @@ -6267,7 +6300,10 @@
     3661@@ -6267,7 +6309,10 @@
    36433662             * something recursive causing trouble. */
    36443663            di = HI2DI(hi);
     
    36523671        }
    36533672     }
    3654 @@ -6718,7 +6754,7 @@
     3673@@ -6718,7 +6763,7 @@
    36553674        EMSG2(_("E723: Missing end of Dictionary '}': %s"), *arg);
    36563675 failret:
     
    36613680     }
    36623681 
    3663 @@ -7139,6 +7175,7 @@
     3682@@ -7139,6 +7184,7 @@
    36643683     {"setreg",         2, 3, f_setreg},
    36653684     {"settabwinvar",   4, 4, f_settabwinvar},
     
    36693688     {"sort",           1, 2, f_sort},
    36703689     {"soundfold",      1, 1, f_soundfold},
    3671 @@ -7595,8 +7632,8 @@
     3690@@ -7595,8 +7641,8 @@
    36723691  * Give an error message with a function name.  Handle <SNR> things.
    36733692  */
     
    36803699 {
    36813700     char_u     *p;
    3682 @@ -7605,7 +7642,7 @@
     3701@@ -7605,7 +7651,7 @@
    36833702        p = concat_str((char_u *)"<SNR>", name + 3);
    36843703     else
     
    36893708        vim_free(p);
    36903709 }
    3691 @@ -8252,6 +8289,12 @@
     3710@@ -8252,6 +8298,12 @@
    36923711        EMSG(_("E785: complete() can only be used in Insert mode"));
    36933712        return;
     
    37023721     {
    37033722        EMSG(_(e_invarg));
    3704 @@ -9173,25 +9216,25 @@
     3723@@ -9173,25 +9225,25 @@
    37053724     typval_T   save_key;
    37063725     int                rem;
     
    37323751     }
    37333752 
    3734 @@ -9223,7 +9266,7 @@
     3753@@ -9223,7 +9275,7 @@
    37353754                {
    37363755                    --todo;
     
    37413760                    vimvars[VV_KEY].vv_str = vim_strsave(di->di_key);
    37423761                    if (filter_map_one(&di->di_tv, expr, map, &rem) == FAIL
    3743 @@ -9242,7 +9285,7 @@
     3762@@ -9242,7 +9294,7 @@
    37443763        {
    37453764            for (li = l->lv_first; li != NULL; li = nli)
     
    37503769                nli = li->li_next;
    37513770                if (filter_map_one(&li->li_tv, expr, map, &rem) == FAIL
    3752 @@ -9598,7 +9641,9 @@
     3771@@ -9598,7 +9650,9 @@
    37533772     typval_T   *argvars;
    37543773     typval_T   *rettv;
     
    37613780 
    37623781 /*
    3763 @@ -9792,6 +9837,9 @@
     3782@@ -9792,6 +9846,9 @@
    37643783     varnumber_T                n;
    37653784     int                        error = FALSE;
     
    37713790     ++allow_keys;
    37723791     if (argvars[0].v_type == VAR_UNKNOWN)
    3773 @@ -9809,6 +9857,10 @@
     3792@@ -9809,6 +9866,10 @@
    37743793     --no_mapping;
    37753794     --allow_keys;
     
    37823801     if (IS_SPECIAL(n) || mod_mask != 0)
    37833802     {
    3784 @@ -9837,6 +9889,53 @@
     3803@@ -9837,6 +9898,53 @@
    37853804        temp[i++] = NUL;
    37863805        rettv->v_type = VAR_STRING;
     
    38363855 }
    38373856 
    3838 @@ -10412,20 +10511,14 @@
     3857@@ -10412,20 +10520,14 @@
    38393858 
    38403859     if (win != NULL && varname != NULL)
     
    38633882        {
    38643883            if (*varname == NUL)
    3865 @@ -10438,6 +10531,10 @@
     3884@@ -10438,6 +10540,10 @@
    38663885            if (v != NULL)
    38673886                copy_tv(&v->di_tv, rettv);
     
    38743893 
    38753894     --emsg_off;
    3876 @@ -11312,14 +11409,19 @@
     3895@@ -11312,14 +11418,19 @@
    38773896 
    38783897 static int inputsecret_flag = 0;
     
    38973916     char_u     *prompt = get_tv_string_chk(&argvars[0]);
    38983917     char_u     *p = NULL;
    3899 @@ -11369,10 +11471,10 @@
     3918@@ -11369,10 +11480,10 @@
    39003919            if (defstr != NULL)
    39013920                stuffReadbuffSpec(defstr);
     
    39103929 
    39113930                rettv->vval.v_string = NULL;
    3912 @@ -11404,6 +11506,18 @@
     3931@@ -11404,6 +11515,18 @@
    39133932 }
    39143933 
     
    39293948  */
    39303949     static void
    3931 @@ -11443,7 +11557,7 @@
     3950@@ -11443,7 +11566,7 @@
    39323951     }
    39333952     else
     
    39383957 
    39393958 /*
    3940 @@ -11471,6 +11585,7 @@
     3959@@ -11471,6 +11594,7 @@
    39413960     }
    39423961 
     
    39463965     msg_scroll = TRUE;
    39473966     msg_clr_eos();
    3948 @@ -13250,7 +13365,7 @@
     3967@@ -13250,7 +13374,7 @@
    39493968        if (argvars[2].v_type != VAR_UNKNOWN)
    39503969            EMSG2(_(e_toomanyarg), "remove()");
     
    39553974            key = get_tv_string_chk(&argvars[1]);
    39563975            if (key != NULL)
    3957 @@ -13270,7 +13385,7 @@
     3976@@ -13270,7 +13394,7 @@
    39583977     else if (argvars[0].v_type != VAR_LIST)
    39593978        EMSG2(_(e_listdictarg), "remove()");
     
    39643983        int         error = FALSE;
    39653984 
    3966 @@ -14157,11 +14272,7 @@
     3985@@ -14157,11 +14281,7 @@
    39673986     typval_T   *rettv;
    39683987 {
     
    39763995     typval_T   *varp;
    39773996     char_u     nbuf[NUMBUFLEN];
    3978 @@ -14178,12 +14289,7 @@
     3997@@ -14178,12 +14298,7 @@
    39793998     if (buf != NULL && varname != NULL && varp != NULL)
    39803999     {
     
    39894008        if (*varname == '&')
    39904009        {
    3991 @@ -14210,11 +14316,7 @@
     4010@@ -14210,11 +14325,7 @@
    39924011        }
    39934012 
     
    40014020 }
    40024021 
    4003 @@ -14582,6 +14684,18 @@
     4022@@ -14582,6 +14693,18 @@
    40044023 }
    40054024 
     
    40204039  */
    40214040     static void
    4022 @@ -16173,7 +16287,7 @@
     4041@@ -16173,7 +16296,7 @@
    40234042        curwin->w_curswant = get_dict_number(dict, (char_u *)"curswant");
    40244043        curwin->w_set_curswant = FALSE;
     
    40294048        curwin->w_topfill = get_dict_number(dict, (char_u *)"topfill");
    40304049 #endif
    4031 @@ -16218,6 +16332,7 @@
     4050@@ -16218,6 +16341,7 @@
    40324051 #ifdef FEAT_VIRTUALEDIT
    40334052     dict_add_nr_str(dict, "coladd", (long)curwin->w_cursor.coladd, NULL);
     
    40374056 
    40384057     dict_add_nr_str(dict, "topline", (long)curwin->w_topline, NULL);
    4039 @@ -16438,9 +16553,12 @@
     4058@@ -16438,9 +16562,12 @@
    40404059     long       i = 0;
    40414060     long       n;
     
    40534072 
    40544073     if (fnump != NULL)
    4055 @@ -16466,8 +16584,9 @@
     4074@@ -16466,8 +16593,9 @@
    40564075 #ifdef FEAT_VIRTUALEDIT
    40574076     n = list_find_nr(l, i, NULL);
     
    40654084 
    40664085     return OK;
    4067 @@ -17759,6 +17878,13 @@
     4086@@ -17759,6 +17887,13 @@
    40684087     }
    40694088     else                   /* add a new variable */
     
    40794098        for (p = varname; *p != NUL; ++p)
    40804099            if (!eval_isnamec1(*p) && (p == varname || !VIM_ISDIGIT(*p))
    4081 @@ -17792,7 +17918,7 @@
     4100@@ -17792,7 +17927,7 @@
    40824101 }
    40834102 
     
    40884107  */
    40894108     static int
    4090 @@ -17814,6 +17940,23 @@
     4109@@ -17814,6 +17949,23 @@
    40914110 }
    40924111 
     
    41124131  * Also give an error message, using "name".
    41134132  */
    4114 @@ -18396,12 +18539,14 @@
     4133@@ -18396,12 +18548,14 @@
    41154134 
    41164135     if (!eap->skip)
     
    41294148            if (*arg == K_SPECIAL)
    41304149                j = 3;
    4131 @@ -18786,6 +18931,7 @@
     4150@@ -18786,6 +18940,7 @@
    41324151                if (dict_add(fudi.fd_dict, fudi.fd_di) == FAIL)
    41334152                {
     
    41374156                }
    41384157            }
    4139 @@ -18963,7 +19109,8 @@
     4158@@ -18963,7 +19118,8 @@
    41404159     else if (lead > 0)
    41414160     {
     
    41474166            /* It's "s:" or "<SID>" */
    41484167            if (current_SID <= 0)
    4149 @@ -19618,6 +19765,7 @@
     4168@@ -19618,6 +19774,7 @@
    41504169     char_u     *name;
    41514170 #ifdef FEAT_PROFILE
     
    41554174 
    41564175     /* If depth of calling is getting too high, don't execute the function */
    4157 @@ -19685,6 +19833,7 @@
     4176@@ -19685,6 +19842,7 @@
    41584177     v->di_tv.vval.v_list = &fc.l_varlist;
    41594178     vim_memset(&fc.l_varlist, 0, sizeof(list_T));
     
    41634182     /*
    41644183      * Set a:firstline to "firstline" and a:lastline to "lastline".
    4165 @@ -19761,7 +19910,7 @@
     4184@@ -19761,7 +19919,7 @@
    41664185            if (p_verbose >= 14)
    41674186            {
     
    41724191 
    41734192                msg_puts((char_u *)"(");
    4174 @@ -19773,8 +19922,8 @@
     4193@@ -19773,8 +19931,8 @@
    41754194                        msg_outnum((long)argvars[i].vval.v_number);
    41764195                    else
     
    41834202                        vim_free(tofree);
    41844203                    }
    4185 @@ -19796,7 +19945,7 @@
     4204@@ -19796,7 +19954,7 @@
    41864205                       || (fc.caller != NULL && &fc.caller->func->uf_profiling))
    41874206        {
     
    41924211        }
    41934212        script_prof_save(&wait_start);
    4194 @@ -19826,14 +19975,14 @@
     4213@@ -19826,14 +19984,14 @@
    41954214     if (do_profiling == PROF_YES && (fp->uf_profiling
    41964215                    || (fc.caller != NULL && &fc.caller->func->uf_profiling)))
     
    42134232     }
    42144233 #endif
    4215 @@ -19852,13 +20001,13 @@
     4234@@ -19852,13 +20010,13 @@
    42164235        else
    42174236        {
     
    42314250diff -Naur vim70.orig/src/ex_cmds2.c vim70/src/ex_cmds2.c
    42324251--- vim70.orig/src/ex_cmds2.c   2006-04-17 03:19:07.000000000 -0700
    4233 +++ vim70/src/ex_cmds2.c        2006-11-21 22:41:36.000000000 -0800
     4252+++ vim70/src/ex_cmds2.c        2006-11-29 16:09:58.000000000 -0800
    42344253@@ -3648,13 +3648,13 @@
    42354254  * Return FALSE when not sourcing a file.
     
    42524271diff -Naur vim70.orig/src/ex_cmds.c vim70/src/ex_cmds.c
    42534272--- vim70.orig/src/ex_cmds.c    2006-04-22 11:56:56.000000000 -0700
    4254 +++ vim70/src/ex_cmds.c 2006-11-21 22:42:41.000000000 -0800
     4273+++ vim70/src/ex_cmds.c 2006-11-29 16:10:04.000000000 -0800
    42554274@@ -95,7 +95,10 @@
    42564275                _("<%s>%s%s  %d,  Hex %02x,  Octal %03o"),
     
    43634382diff -Naur vim70.orig/src/ex_cmds.h vim70/src/ex_cmds.h
    43644383--- vim70.orig/src/ex_cmds.h    2006-04-07 02:44:46.000000000 -0700
    4365 +++ vim70/src/ex_cmds.h 2006-11-21 22:39:21.000000000 -0800
     4384+++ vim70/src/ex_cmds.h 2006-11-29 16:09:53.000000000 -0800
    43664385@@ -262,7 +262,7 @@
    43674386 EX(CMD_comclear,       "comclear",     ex_comclear,
     
    43754394diff -Naur vim70.orig/src/ex_docmd.c vim70/src/ex_docmd.c
    43764395--- vim70.orig/src/ex_docmd.c   2006-05-05 09:33:19.000000000 -0700
    4377 +++ vim70/src/ex_docmd.c        2006-11-21 22:46:51.000000000 -0800
     4396+++ vim70/src/ex_docmd.c        2006-11-29 16:10:23.000000000 -0800
    43784397@@ -58,9 +58,9 @@
    43794398 #endif
     
    46834702 static frame_T *ses_skipframe __ARGS((frame_T *fr));
    46844703 static int ses_do_frame __ARGS((frame_T *fr));
    4685 @@ -9655,8 +9673,8 @@
     4704@@ -9655,8 +9673,9 @@
    46864705     win_T      *wp;
    46874706     char_u     *sname;
     
    46904709     int                tabnr;
    46914710+    win_T      *tab_firstwin;
     4711+    frame_T    *tab_topframe;
    46924712 
    46934713     if (ssop_flags & SSOP_BUFFERS)
    46944714        only_save_windows = FALSE;              /* Save ALL buffers */
    4695 @@ -9764,14 +9782,26 @@
     4715@@ -9764,14 +9783,33 @@
    46964716     /*
    46974717      * May repeat putting Windows for each tab, when "tabpages" is in
     
    47014721      */
    47024722+    tab_firstwin = firstwin;   /* first window in tab page "tabnr" */
     4723+    tab_topframe = topframe;
    47034724     for (tabnr = 1; ; ++tabnr)
    47044725     {
     
    47154736+               break;          /* done all tab pages */
    47164737+           if (tp == curtab)
     4738+           {
    47174739+               tab_firstwin = firstwin;
     4740+               tab_topframe = topframe;
     4741+           }
    47184742+           else
     4743+           {
    47194744+               tab_firstwin = tp->tp_firstwin;
     4745+               tab_topframe = tp->tp_topframe;
     4746+           }
    47204747+           if (tabnr > 1)
    47214748+               need_tabnew = TRUE;
     
    47234750 
    47244751        /*
    4725 @@ -9779,7 +9809,7 @@
     4752@@ -9779,7 +9817,7 @@
    47264753         * is aborted we don't end up with a number of useless windows.
    47274754         * This may have side effects! (e.g., compressed or network file).
     
    47324759            if (ses_do_win(wp)
    47334760                    && wp->w_buffer->b_ffname != NULL
    4734 @@ -9789,15 +9819,20 @@
     4761@@ -9789,21 +9827,26 @@
    47354762 #endif
    47364763                    )
     
    47544781         * Save current window layout.
    47554782         */
    4756 @@ -9815,7 +9850,7 @@
     4783        if (put_line(fd, "set splitbelow splitright") == FAIL)
     4784            return FAIL;
     4785-       if (ses_win_rec(fd, topframe) == FAIL)
     4786+       if (ses_win_rec(fd, tab_topframe) == FAIL)
     4787            return FAIL;
     4788        if (!p_sb && put_line(fd, "set nosplitbelow") == FAIL)
     4789            return FAIL;
     4790@@ -9815,7 +9858,7 @@
    47574791         * Remember the window number of the current window after restoring.
    47584792         */
     
    47634797            if (ses_do_win(wp))
    47644798                ++nr;
    4765 @@ -9838,13 +9873,13 @@
     4799@@ -9838,13 +9881,13 @@
    47664800         */
    47674801        if (put_line(fd, "set winheight=1 winwidth=1") == FAIL)
     
    47794813            if (!ses_do_win(wp))
    47804814                continue;
    4781 @@ -9865,19 +9900,17 @@
     4815@@ -9865,19 +9908,17 @@
    47824816         * Restore window sizes again after jumping around in windows, because
    47834817         * the current window has a minimum size while others may not.
     
    48014835                || put_eol(fd) == FAIL)
    48024836            return FAIL;
    4803 @@ -9913,16 +9946,17 @@
     4837@@ -9913,16 +9954,17 @@
    48044838 }
    48054839 
     
    48214855            if (!ses_do_win(wp))
    48224856                continue;
     4857diff -Naur vim70.orig/src/ex_eval.c vim70/src/ex_eval.c
     4858--- vim70.orig/src/ex_eval.c    2006-04-22 12:22:27.000000000 -0700
     4859+++ vim70/src/ex_eval.c 2006-11-29 16:10:23.000000000 -0800
     4860@@ -340,7 +340,7 @@
     4861 
     4862     /* If no exception is to be thrown or the conversion should be done after
     4863      * returning to a previous invocation of do_one_cmd(), do nothing. */
     4864-    if (*msg_list == NULL)
     4865+    if (msg_list == NULL || *msg_list == NULL)
     4866        return;
     4867 
     4868     if (throw_exception(*msg_list, ET_ERROR, cmdname) == FAIL)
     4869@@ -2026,8 +2026,11 @@
     4870 
     4871        /* If an error was about to be converted to an exception when
     4872         * enter_cleanup() was called, free the message list. */
     4873-       free_msglist(*msg_list);
     4874-       *msg_list = NULL;
     4875+       if (msg_list != NULL)
     4876+       {
     4877+           free_msglist(*msg_list);
     4878+           *msg_list = NULL;
     4879+       }
     4880     }
     4881 
     4882     /*
    48234883diff -Naur vim70.orig/src/ex_getln.c vim70/src/ex_getln.c
    48244884--- vim70.orig/src/ex_getln.c   2006-04-30 08:32:01.000000000 -0700
    4825 +++ vim70/src/ex_getln.c        2006-11-21 22:46:55.000000000 -0800
     4885+++ vim70/src/ex_getln.c        2006-11-29 16:10:15.000000000 -0800
    48264886@@ -34,7 +34,7 @@
    48274887     int                xp_context;     /* type of expansion */
     
    49735033diff -Naur vim70.orig/src/fileio.c vim70/src/fileio.c
    49745034--- vim70.orig/src/fileio.c     2006-04-30 08:28:57.000000000 -0700
    4975 +++ vim70/src/fileio.c  2006-11-21 22:43:36.000000000 -0800
     5035+++ vim70/src/fileio.c  2006-11-29 16:10:06.000000000 -0800
    49765036@@ -316,6 +316,9 @@
    49775037      * display the line. */
     
    50955155diff -Naur vim70.orig/src/fold.c vim70/src/fold.c
    50965156--- vim70.orig/src/fold.c       2006-04-22 12:35:56.000000000 -0700
    5097 +++ vim70/src/fold.c    2006-11-21 22:46:21.000000000 -0800
     5157+++ vim70/src/fold.c    2006-11-29 16:10:14.000000000 -0800
    50985158@@ -2971,7 +2971,11 @@
    50995159     else
     
    51105170diff -Naur vim70.orig/src/getchar.c vim70/src/getchar.c
    51115171--- vim70.orig/src/getchar.c    2006-05-03 10:29:21.000000000 -0700
    5112 +++ vim70/src/getchar.c 2006-11-21 22:44:09.000000000 -0800
     5172+++ vim70/src/getchar.c 2006-11-29 16:10:08.000000000 -0800
    51135173@@ -1451,7 +1451,8 @@
    51145174 {
     
    51965256diff -Naur vim70.orig/src/globals.h vim70/src/globals.h
    51975257--- vim70.orig/src/globals.h    2006-04-30 06:16:23.000000000 -0700
    5198 +++ vim70/src/globals.h 2006-11-21 22:45:07.000000000 -0800
     5258+++ vim70/src/globals.h 2006-11-29 16:10:10.000000000 -0800
    51995259@@ -166,6 +166,7 @@
    52005260 EXTERN int     emsg_off INIT(= 0);         /* don't display errors for now,
     
    52365296diff -Naur vim70.orig/src/gui_at_fs.c vim70/src/gui_at_fs.c
    52375297--- vim70.orig/src/gui_at_fs.c  2005-07-09 04:30:17.000000000 -0700
    5238 +++ vim70/src/gui_at_fs.c       2006-11-21 22:38:33.000000000 -0800
     5298+++ vim70/src/gui_at_fs.c       2006-11-29 16:09:50.000000000 -0800
    52395299@@ -1861,27 +1861,27 @@
    52405300     XtPointer  pnew;
     
    53525412diff -Naur vim70.orig/src/gui_beval.c vim70/src/gui_beval.c
    53535413--- vim70.orig/src/gui_beval.c  2006-05-04 12:29:51.000000000 -0700
    5354 +++ vim70/src/gui_beval.c       2006-11-21 22:41:36.000000000 -0800
     5414+++ vim70/src/gui_beval.c       2006-11-29 16:09:58.000000000 -0800
    53555415@@ -926,7 +926,7 @@
    53565416 #  define IS_NONPRINTABLE(c) (((c) < 0x20 && (c) != TAB && (c) != NL) \
     
    53915451diff -Naur vim70.orig/src/gui.c vim70/src/gui.c
    53925452--- vim70.orig/src/gui.c        2006-05-03 04:00:59.000000000 -0700
    5393 +++ vim70/src/gui.c     2006-11-21 22:45:00.000000000 -0800
     5453+++ vim70/src/gui.c     2006-11-29 16:10:10.000000000 -0800
    53945454@@ -187,9 +187,10 @@
    53955455 #endif
     
    54945554diff -Naur vim70.orig/src/gui_gtk.c vim70/src/gui_gtk.c
    54955555--- vim70.orig/src/gui_gtk.c    2006-05-05 04:52:52.000000000 -0700
    5496 +++ vim70/src/gui_gtk.c 2006-11-21 22:46:12.000000000 -0800
     5556+++ vim70/src/gui_gtk.c 2006-11-29 16:10:13.000000000 -0800
    54975557@@ -957,15 +957,15 @@
    54985558 get_menu_position(vimmenu_T *menu)
     
    55925652diff -Naur vim70.orig/src/gui_gtk_x11.c vim70/src/gui_gtk_x11.c
    55935653--- vim70.orig/src/gui_gtk_x11.c        2006-05-04 23:58:59.000000000 -0700
    5594 +++ vim70/src/gui_gtk_x11.c     2006-11-21 22:41:36.000000000 -0800
     5654+++ vim70/src/gui_gtk_x11.c     2006-11-29 16:09:58.000000000 -0800
    55955655@@ -3233,12 +3233,12 @@
    55965656 on_select_tab(
     
    56575717diff -Naur vim70.orig/src/gui_xmebw.c vim70/src/gui_xmebw.c
    56585718--- vim70.orig/src/gui_xmebw.c  2006-04-30 08:32:32.000000000 -0700
    5659 +++ vim70/src/gui_xmebw.c       2006-11-21 22:46:14.000000000 -0800
     5719+++ vim70/src/gui_xmebw.c       2006-11-29 16:10:13.000000000 -0800
    56605720@@ -47,13 +47,13 @@
    56615721 #include "gui_xmebwp.h"
     
    57865846diff -Naur vim70.orig/src/hardcopy.c vim70/src/hardcopy.c
    57875847--- vim70.orig/src/hardcopy.c   2006-05-04 03:09:58.000000000 -0700
    5788 +++ vim70/src/hardcopy.c        2006-11-21 22:41:36.000000000 -0800
     5848+++ vim70/src/hardcopy.c        2006-11-29 16:09:58.000000000 -0800
    57895849@@ -1794,29 +1794,27 @@
    57905850     static int
     
    58895949diff -Naur vim70.orig/src/if_cscope.c vim70/src/if_cscope.c
    58905950--- vim70.orig/src/if_cscope.c  2006-04-18 01:54:15.000000000 -0700
    5891 +++ vim70/src/if_cscope.c       2006-11-21 22:46:59.000000000 -0800
     5951+++ vim70/src/if_cscope.c       2006-11-29 16:10:15.000000000 -0800
    58925952@@ -989,8 +989,7 @@
    58935953 {
     
    60066066diff -Naur vim70.orig/src/if_perl.xs vim70/src/if_perl.xs
    60076067--- vim70.orig/src/if_perl.xs   2006-03-06 10:57:16.000000000 -0800
    6008 +++ vim70/src/if_perl.xs        2006-11-21 22:40:59.000000000 -0800
     6068+++ vim70/src/if_perl.xs        2006-11-29 16:09:56.000000000 -0800
    60096069@@ -155,8 +155,8 @@
    60106070 static int (*perl_run)(PerlInterpreter*);
     
    61216181diff -Naur vim70.orig/src/if_python.c vim70/src/if_python.c
    61226182--- vim70.orig/src/if_python.c  2006-04-30 08:31:36.000000000 -0700
    6123 +++ vim70/src/if_python.c       2006-11-21 22:44:02.000000000 -0800
     6183+++ vim70/src/if_python.c       2006-11-29 16:10:08.000000000 -0800
    61246184@@ -1463,7 +1463,7 @@
    61256185     if (this->buf && this->buf != INVALID_BUFFER_VALUE)
     
    61606220diff -Naur vim70.orig/src/if_ruby.c vim70/src/if_ruby.c
    61616221--- vim70.orig/src/if_ruby.c    2006-04-30 08:37:52.000000000 -0700
    6162 +++ vim70/src/if_ruby.c 2006-11-21 22:40:59.000000000 -0800
     6222+++ vim70/src/if_ruby.c 2006-11-29 16:09:56.000000000 -0800
    61636223@@ -643,11 +643,14 @@
    61646224 
     
    62756335diff -Naur vim70.orig/src/macros.h vim70/src/macros.h
    62766336--- vim70.orig/src/macros.h     2006-03-01 04:01:10.000000000 -0800
    6277 +++ vim70/src/macros.h  2006-11-21 22:42:33.000000000 -0800
     6337+++ vim70/src/macros.h  2006-11-29 16:10:04.000000000 -0800
    62786338@@ -276,3 +276,9 @@
    62796339 # define MB_CHARLEN(p)         STRLEN(p)
     
    62886348diff -Naur vim70.orig/src/main.c vim70/src/main.c
    62896349--- vim70.orig/src/main.c       2006-05-03 10:36:44.000000000 -0700
    6290 +++ vim70/src/main.c    2006-11-21 22:46:44.000000000 -0800
     6350+++ vim70/src/main.c    2006-11-29 16:10:15.000000000 -0800
    62916351@@ -564,7 +564,11 @@
    62926352      */
     
    64826542diff -Naur vim70.orig/src/Makefile vim70/src/Makefile
    64836543--- vim70.orig/src/Makefile     2006-05-07 06:25:27.000000000 -0700
    6484 +++ vim70/src/Makefile  2006-11-21 22:42:08.000000000 -0800
     6544+++ vim70/src/Makefile  2006-11-29 16:10:01.000000000 -0800
    64856545@@ -2177,6 +2177,7 @@
    64866546        cd $(SHADOWDIR)/xxd; ln -s ../../xxd/*.[ch] ../../xxd/Make* .
     
    65026562diff -Naur vim70.orig/src/mbyte.c vim70/src/mbyte.c
    65036563--- vim70.orig/src/mbyte.c      2006-04-30 04:51:01.000000000 -0700
    6504 +++ vim70/src/mbyte.c   2006-11-21 22:41:36.000000000 -0800
     6564+++ vim70/src/mbyte.c   2006-11-29 16:09:58.000000000 -0800
    65056565@@ -311,7 +311,11 @@
    65066566 
     
    65846644diff -Naur vim70.orig/src/memfile.c vim70/src/memfile.c
    65856645--- vim70.orig/src/memfile.c    2006-03-06 00:59:15.000000000 -0800
    6586 +++ vim70/src/memfile.c 2006-11-21 22:46:36.000000000 -0800
     6646+++ vim70/src/memfile.c 2006-11-29 16:10:14.000000000 -0800
    65876647@@ -517,7 +517,7 @@
    65886648        mf_ins_free(mfp, hp);   /* put *hp in the free list */
     
    66416701diff -Naur vim70.orig/src/memline.c vim70/src/memline.c
    66426702--- vim70.orig/src/memline.c    2006-04-20 14:00:21.000000000 -0700
    6643 +++ vim70/src/memline.c 2006-11-21 22:47:07.000000000 -0800
     6703+++ vim70/src/memline.c 2006-11-29 16:10:15.000000000 -0800
    66446704@@ -215,7 +215,7 @@
    66456705 #define ML_FLUSH       0x02        /* flush locked block */
     
    67256785diff -Naur vim70.orig/src/menu.c vim70/src/menu.c
    67266786--- vim70.orig/src/menu.c       2006-05-03 10:30:48.000000000 -0700
    6727 +++ vim70/src/menu.c    2006-11-21 22:41:07.000000000 -0800
     6787+++ vim70/src/menu.c    2006-11-29 16:09:56.000000000 -0800
    67286788@@ -511,6 +511,14 @@
    67296789         * name (without mnemonic and accelerator text). */
     
    68026862diff -Naur vim70.orig/src/message.c vim70/src/message.c
    68036863--- vim70.orig/src/message.c    2006-05-06 13:07:37.000000000 -0700
    6804 +++ vim70/src/message.c 2006-11-21 22:45:07.000000000 -0800
     6864+++ vim70/src/message.c 2006-11-29 16:10:10.000000000 -0800
    68056865@@ -53,7 +53,6 @@
    68066866 static struct msg_hist *first_msg_hist = NULL;
     
    68556915diff -Naur vim70.orig/src/misc1.c vim70/src/misc1.c
    68566916--- vim70.orig/src/misc1.c      2006-04-30 08:30:02.000000000 -0700
    6857 +++ vim70/src/misc1.c   2006-11-21 22:46:04.000000000 -0800
     6917+++ vim70/src/misc1.c   2006-11-29 16:10:13.000000000 -0800
    68586918@@ -1761,15 +1761,13 @@
    68596919      * Add column offset for 'number', 'foldcolumn', etc.
     
    69707030diff -Naur vim70.orig/src/misc2.c vim70/src/misc2.c
    69717031--- vim70.orig/src/misc2.c      2006-05-04 05:12:38.000000000 -0700
    6972 +++ vim70/src/misc2.c   2006-11-21 22:43:59.000000000 -0800
     7032+++ vim70/src/misc2.c   2006-11-29 16:10:08.000000000 -0800
    69737033@@ -1229,6 +1229,94 @@
    69747034     return escaped_string;
     
    70687128diff -Naur vim70.orig/src/netbeans.c vim70/src/netbeans.c
    70697129--- vim70.orig/src/netbeans.c   2006-04-22 11:00:05.000000000 -0700
    7070 +++ vim70/src/netbeans.c        2006-11-21 22:46:48.000000000 -0800
     7130+++ vim70/src/netbeans.c        2006-11-29 16:10:15.000000000 -0800
    70717131@@ -61,7 +61,7 @@
    70727132 
     
    72777337diff -Naur vim70.orig/src/normal.c vim70/src/normal.c
    72787338--- vim70.orig/src/normal.c     2006-04-29 06:11:18.000000000 -0700
    7279 +++ vim70/src/normal.c  2006-11-21 22:46:40.000000000 -0800
     7339+++ vim70/src/normal.c  2006-11-29 16:10:15.000000000 -0800
    72807340@@ -1477,14 +1477,17 @@
    72817341        }
     
    73647424diff -Naur vim70.orig/src/ops.c vim70/src/ops.c
    73657425--- vim70.orig/src/ops.c        2006-04-30 08:13:44.000000000 -0700
    7366 +++ vim70/src/ops.c     2006-11-21 22:46:40.000000000 -0800
     7426+++ vim70/src/ops.c     2006-11-29 16:10:15.000000000 -0800
    73677427@@ -95,8 +95,8 @@
    73687428 static void block_insert __ARGS((oparg_T *oap, char_u *s, int b_insert, struct block_def*bdp));
     
    75647624diff -Naur vim70.orig/src/option.c vim70/src/option.c
    75657625--- vim70.orig/src/option.c     2006-05-03 10:32:28.000000000 -0700
    7566 +++ vim70/src/option.c  2006-11-21 22:45:40.000000000 -0800
     7626+++ vim70/src/option.c  2006-11-29 16:10:11.000000000 -0800
    75677627@@ -2294,7 +2294,7 @@
    75687628                            {(char_u *)0L, (char_u *)0L}
     
    76807740diff -Naur vim70.orig/src/os_unix.c vim70/src/os_unix.c
    76817741--- vim70.orig/src/os_unix.c    2006-05-01 01:13:15.000000000 -0700
    7682 +++ vim70/src/os_unix.c 2006-11-21 22:41:36.000000000 -0800
     7742+++ vim70/src/os_unix.c 2006-11-29 16:09:58.000000000 -0800
    76837743@@ -3934,7 +3934,7 @@
    76847744                    {
     
    77397799diff -Naur vim70.orig/src/popupmnu.c vim70/src/popupmnu.c
    77407800--- vim70.orig/src/popupmnu.c   2006-04-20 13:18:37.000000000 -0700
    7741 +++ vim70/src/popupmnu.c        2006-11-21 22:41:18.000000000 -0800
     7801+++ vim70/src/popupmnu.c        2006-11-29 16:09:57.000000000 -0800
    77427802@@ -552,6 +552,9 @@
    77437803 {
     
    77527812diff -Naur vim70.orig/src/proto/buffer.pro vim70/src/proto/buffer.pro
    77537813--- vim70.orig/src/proto/buffer.pro     2006-05-07 06:08:29.000000000 -0700
    7754 +++ vim70/src/proto/buffer.pro  2006-11-21 22:42:33.000000000 -0800
     7814+++ vim70/src/proto/buffer.pro  2006-11-29 16:10:04.000000000 -0800
    77557815@@ -10,6 +10,7 @@
    77567816 extern int do_buffer __ARGS((int action, int start, int dir, int count, int forceit));
     
    77637823diff -Naur vim70.orig/src/proto/eval.pro vim70/src/proto/eval.pro
    77647824--- vim70.orig/src/proto/eval.pro       2006-05-07 06:08:33.000000000 -0700
    7765 +++ vim70/src/proto/eval.pro    2006-11-21 22:45:14.000000000 -0800
     7825+++ vim70/src/proto/eval.pro    2006-11-29 16:10:10.000000000 -0800
    77667826@@ -44,7 +44,7 @@
    77677827 extern char_u *get_user_var_name __ARGS((expand_T *xp, int idx));
     
    77757835diff -Naur vim70.orig/src/proto/menu.pro vim70/src/proto/menu.pro
    77767836--- vim70.orig/src/proto/menu.pro       2006-05-07 06:08:51.000000000 -0700
    7777 +++ vim70/src/proto/menu.pro    2006-11-21 22:41:07.000000000 -0800
     7837+++ vim70/src/proto/menu.pro    2006-11-29 16:09:56.000000000 -0800
    77787838@@ -10,6 +10,7 @@
    77797839 extern int menu_is_child_of_popup __ARGS((vimmenu_T *menu));
     
    77867846diff -Naur vim70.orig/src/proto/misc2.pro vim70/src/proto/misc2.pro
    77877847--- vim70.orig/src/proto/misc2.pro      2006-05-07 06:08:54.000000000 -0700
    7788 +++ vim70/src/proto/misc2.pro   2006-11-21 22:43:59.000000000 -0800
     7848+++ vim70/src/proto/misc2.pro   2006-11-29 16:10:08.000000000 -0800
    77897849@@ -29,6 +29,7 @@
    77907850 extern char_u *vim_strnsave __ARGS((char_u *string, int len));
     
    77977857diff -Naur vim70.orig/src/proto/ops.pro vim70/src/proto/ops.pro
    77987858--- vim70.orig/src/proto/ops.pro        2006-05-07 06:08:58.000000000 -0700
    7799 +++ vim70/src/proto/ops.pro     2006-11-21 22:46:40.000000000 -0800
     7859+++ vim70/src/proto/ops.pro     2006-11-29 16:10:15.000000000 -0800
    78007860@@ -17,10 +17,10 @@
    78017861 extern void put_register __ARGS((int name, void *reg));
     
    78137873diff -Naur vim70.orig/src/proto/undo.pro vim70/src/proto/undo.pro
    78147874--- vim70.orig/src/proto/undo.pro       2006-05-07 06:09:11.000000000 -0700
    7815 +++ vim70/src/proto/undo.pro    2006-11-21 22:39:46.000000000 -0800
     7875+++ vim70/src/proto/undo.pro    2006-11-29 16:09:53.000000000 -0800
    78167876@@ -4,6 +4,7 @@
    78177877 extern int u_savesub __ARGS((linenr_T lnum));
     
    78247884diff -Naur vim70.orig/src/quickfix.c vim70/src/quickfix.c
    78257885--- vim70.orig/src/quickfix.c   2006-05-03 00:47:42.000000000 -0700
    7826 +++ vim70/src/quickfix.c        2006-11-21 22:45:51.000000000 -0800
     7886+++ vim70/src/quickfix.c        2006-11-29 16:10:12.000000000 -0800
    78277887@@ -500,8 +500,6 @@
    78287888        {
     
    80798139diff -Naur vim70.orig/src/regexp.c vim70/src/regexp.c
    80808140--- vim70.orig/src/regexp.c     2006-04-30 08:31:50.000000000 -0700
    8081 +++ vim70/src/regexp.c  2006-11-21 22:45:44.000000000 -0800
     8141+++ vim70/src/regexp.c  2006-11-29 16:10:12.000000000 -0800
    80828142@@ -3777,8 +3777,8 @@
    80838143 
     
    82168276diff -Naur vim70.orig/src/screen.c vim70/src/screen.c
    82178277--- vim70.orig/src/screen.c     2006-05-05 03:13:55.000000000 -0700
    8218 +++ vim70/src/screen.c  2006-11-21 22:44:38.000000000 -0800
    8219 @@ -1228,7 +1228,14 @@
     8278+++ vim70/src/screen.c  2006-11-29 16:10:15.000000000 -0800
     8279@@ -455,6 +455,7 @@
     8280                    && curwin->w_topline == curwin->w_lines[0].wl_lnum)
     8281 #ifdef FEAT_VISUAL
     8282                || (type == INVERTED
     8283+                   && VIsual_active
     8284                    && curwin->w_old_cursor_lnum == curwin->w_cursor.lnum
     8285                    && curwin->w_old_visual_mode == VIsual_mode
     8286                    && (curwin->w_valid & VALID_VIRTCOL)
     8287@@ -1228,7 +1229,14 @@
    82208288        {
    82218289            mid_end = wp->w_height;
     
    82328300     }
    82338301     else
    8234 @@ -2612,7 +2619,8 @@
     8302@@ -2612,7 +2620,8 @@
    82358303 #ifdef FEAT_LINEBREAK
    82368304     int                need_showbreak = FALSE;
     
    82428310     int                line_attr = 0;          /* atrribute for the whole line */
    82438311 #endif
    8244 @@ -2626,7 +2634,7 @@
     8312@@ -2626,7 +2635,7 @@
    82458313     int                prev_c = 0;             /* previous Arabic character */
    82468314     int                prev_c1 = 0;            /* first composing char for prev_c */
     
    82518319 #endif
    82528320 
    8253 @@ -4116,17 +4124,12 @@
     8321@@ -4116,17 +4125,12 @@
    82548322                    --ptr;          /* put it back at the NUL */
    82558323                }
     
    82718339 # ifdef FEAT_RIGHTLEFT
    82728340                            wp->w_p_rl ? (col >= 0) :
    8273 @@ -4237,7 +4240,7 @@
     8341@@ -4237,7 +4241,7 @@
    82748342         * At end of the text line or just after the last character.
    82758343         */
     
    82808348 #endif
    82818349                )
    8282 @@ -4258,7 +4261,7 @@
     8350@@ -4258,7 +4262,7 @@
    82838351                                || prevcol == (long)match_hl[0].startcol
    82848352                                || prevcol == (long)match_hl[1].startcol
     
    82898357 # endif
    82908358                           )
    8291 @@ -5076,15 +5079,38 @@
     8359@@ -5076,15 +5080,38 @@
    82928360             * character too.  If we didn't skip any blanks above, then we
    82938361             * only redraw if the character wasn't already redrawn anyway.
     
    83348402 #endif
    83358403            screen_fill(row, row + 1, col + coloff, clear_width + coloff,
    8336 @@ -7103,7 +7129,7 @@
     8404@@ -7103,7 +7130,7 @@
    83378405     tabpage_T      *tp;
    83388406 #endif
     
    83438411     /*
    83448412      * Allocation of the screen buffers is done only when the size changes and
    8345 @@ -7133,6 +7159,12 @@
     8413@@ -7133,6 +7160,12 @@
    83468414        return;
    83478415     entered = TRUE;
     
    83568424 
    83578425     comp_col();                /* recompute columns for shown command and ruler */
    8358 @@ -7205,14 +7237,14 @@
     8426@@ -7205,14 +7238,14 @@
    83598427 #endif
    83608428            || outofmem)
     
    83738441        vim_free(new_ScreenLines);
    83748442        new_ScreenLines = NULL;
    8375 @@ -7240,7 +7272,7 @@
     8443@@ -7240,7 +7273,7 @@
    83768444     }
    83778445     else
     
    83828450        for (new_row = 0; new_row < Rows; ++new_row)
    83838451        {
    8384 @@ -7367,6 +7399,7 @@
     8452@@ -7367,6 +7400,7 @@
    83858453 #endif
    83868454 
     
    83928460diff -Naur vim70.orig/src/search.c vim70/src/search.c
    83938461--- vim70.orig/src/search.c     2006-05-05 05:12:13.000000000 -0700
    8394 +++ vim70/src/search.c  2006-11-21 22:45:07.000000000 -0800
     8462+++ vim70/src/search.c  2006-11-29 16:10:10.000000000 -0800
    83958463@@ -1259,7 +1259,7 @@
    83968464        /*
     
    84498517diff -Naur vim70.orig/src/spell.c vim70/src/spell.c
    84508518--- vim70.orig/src/spell.c      2006-05-05 00:49:58.000000000 -0700
    8451 +++ vim70/src/spell.c   2006-11-21 22:43:32.000000000 -0800
     8519+++ vim70/src/spell.c   2006-11-29 16:10:06.000000000 -0800
    84528520@@ -1483,7 +1483,7 @@
    84538521            else if ((mode == FIND_COMPOUND || mode == FIND_KEEPCOMPOUND
     
    87808848diff -Naur vim70.orig/src/structs.h vim70/src/structs.h
    87818849--- vim70.orig/src/structs.h    2006-04-09 10:57:46.000000000 -0700
    8782 +++ vim70/src/structs.h 2006-11-21 22:40:59.000000000 -0800
     8850+++ vim70/src/structs.h 2006-11-29 16:09:56.000000000 -0800
    87838851@@ -2213,18 +2213,20 @@
    87848852 
     
    88068874diff -Naur vim70.orig/src/syntax.c vim70/src/syntax.c
    88078875--- vim70.orig/src/syntax.c     2006-04-26 05:49:45.000000000 -0700
    8808 +++ vim70/src/syntax.c  2006-11-21 22:46:21.000000000 -0800
     8876+++ vim70/src/syntax.c  2006-11-29 16:10:14.000000000 -0800
    88098877@@ -977,6 +977,7 @@
    88108878 {
     
    89108978diff -Naur vim70.orig/src/tag.c vim70/src/tag.c
    89118979--- vim70.orig/src/tag.c        2006-04-27 06:11:21.000000000 -0700
    8912 +++ vim70/src/tag.c     2006-11-21 22:45:14.000000000 -0800
     8980+++ vim70/src/tag.c     2006-11-29 16:10:10.000000000 -0800
    89138981@@ -911,7 +911,7 @@
    89148982 
     
    89529020diff -Naur vim70.orig/src/term.c vim70/src/term.c
    89539021--- vim70.orig/src/term.c       2006-05-03 10:34:57.000000000 -0700
    8954 +++ vim70/src/term.c    2006-11-21 22:46:08.000000000 -0800
     9022+++ vim70/src/term.c    2006-11-29 16:10:13.000000000 -0800
    89559023@@ -3137,25 +3137,32 @@
    89569024            screenalloc(FALSE);
     
    90169084diff -Naur vim70.orig/src/testdir/test56.in vim70/src/testdir/test56.in
    90179085--- vim70.orig/src/testdir/test56.in    2005-05-18 08:37:37.000000000 -0700
    9018 +++ vim70/src/testdir/test56.in 2006-11-21 22:42:26.000000000 -0800
     9086+++ vim70/src/testdir/test56.in 2006-11-29 16:10:03.000000000 -0800
    90199087@@ -3,7 +3,7 @@
    90209088 STARTTEST
     
    90289096diff -Naur vim70.orig/src/ui.c vim70/src/ui.c
    90299097--- vim70.orig/src/ui.c 2006-03-27 11:15:09.000000000 -0800
    9030 +++ vim70/src/ui.c      2006-11-21 22:41:36.000000000 -0800
     9098+++ vim70/src/ui.c      2006-11-29 16:09:59.000000000 -0800
    90319099@@ -1137,7 +1137,6 @@
    90329100     int                len;
     
    90489116diff -Naur vim70.orig/src/undo.c vim70/src/undo.c
    90499117--- vim70.orig/src/undo.c       2006-04-21 02:30:59.000000000 -0700
    9050 +++ vim70/src/undo.c    2006-11-21 22:41:36.000000000 -0800
     9118+++ vim70/src/undo.c    2006-11-29 16:09:59.000000000 -0800
    90519119@@ -84,7 +84,6 @@
    90529120 static void u_unch_branch __ARGS((u_header_T *uhp));
     
    91139181diff -Naur vim70.orig/src/version.c vim70/src/version.c
    91149182--- vim70.orig/src/version.c    2006-05-03 00:50:42.000000000 -0700
    9115 +++ vim70/src/version.c 2006-11-21 22:47:07.000000000 -0800
    9116 @@ -667,6 +667,312 @@
     9183+++ vim70/src/version.c 2006-11-29 16:10:24.000000000 -0800
     9184@@ -667,6 +667,320 @@
    91179185 static int included_patches[] =
    91189186 {   /* Add new patch number below this line */
    91199187 /**/
     9188+    174,
     9189+/**/
     9190+    173,
     9191+/**/
     9192+    172,
     9193+/**/
     9194+    169,
     9195+/**/
    91209196+    168,
    91219197+/**/
     
    94279503 };
    94289504 
    9429 @@ -731,7 +1037,11 @@
     9505@@ -731,7 +1045,11 @@
    94309506     /* Only MS VC 4.1 and earlier can do Win32s */
    94319507     MSG_PUTS(_("\nMS-Windows 16/32 bit GUI version"));
     
    94419517diff -Naur vim70.orig/src/vim.h vim70/src/vim.h
    94429518--- vim70.orig/src/vim.h        2006-04-30 08:32:38.000000000 -0700
    9443 +++ vim70/src/vim.h     2006-11-21 22:46:26.000000000 -0800
     9519+++ vim70/src/vim.h     2006-11-29 16:10:14.000000000 -0800
    94449520@@ -585,7 +585,6 @@
    94459521 #define INSERT         0x10    /* Insert mode */
     
    94829558diff -Naur vim70.orig/src/window.c vim70/src/window.c
    94839559--- vim70.orig/src/window.c     2006-05-06 03:54:51.000000000 -0700
    9484 +++ vim70/src/window.c  2006-11-21 22:47:07.000000000 -0800
     9560+++ vim70/src/window.c  2006-11-29 16:10:15.000000000 -0800
    94859561@@ -340,10 +340,10 @@
    94869562                {
     
    96159691                hasFoldingWin(wp, lnum, &lnum, NULL, TRUE, NULL);
    96169692                if (lnum == 1)
    9617 
Note: See TracChangeset for help on using the changeset viewer.