home *** CD-ROM | disk | FTP | other *** search
/ vim.ftp.fu-berlin.de / 2015-02-03.vim.ftp.fu-berlin.de.tar / vim.ftp.fu-berlin.de / patches / 6.1.193 < prev    next >
Encoding:
Internet Message Format  |  2002-09-22  |  2.6 KB

  1. To: vim-dev@vim.org
  2. Subject: Patch 6.1.193
  3. Fcc: outbox
  4. From: Bram Moolenaar <Bram@moolenaar.net>
  5. Mime-Version: 1.0
  6. Content-Type: text/plain; charset=ISO-8859-1
  7. Content-Transfer-Encoding: 8bit
  8. ------------
  9.  
  10. Patch 6.1.193
  11. Problem:    Crash in in_id_list() for an item with a "containedin" list. (Dave
  12.         Fishburn)
  13. Solution:   Check for a negative syntax id, used for keywords.
  14. Files:        src/syntax.c
  15.  
  16.  
  17. *** ../vim61.192/src/syntax.c    Sun May  5 12:24:43 2002
  18. --- src/syntax.c    Sun Sep 15 13:27:36 2002
  19. ***************
  20. *** 5558,5570 ****
  21.       /* If spp has a "containedin" list and "cur_si" is in it, return TRUE. */
  22.       if (cur_si != NULL && ssp->cont_in_list != NULL)
  23.       {
  24. !     /* Ignore transparent items without a contains argument. */
  25. !     while (cur_si->si_flags & HL_TRANS_CONT)
  26.           --cur_si;
  27. !     if (in_id_list(NULL, ssp->cont_in_list,
  28.           &(SYN_ITEMS(syn_buf)[cur_si->si_idx].sp_syn),
  29.             SYN_ITEMS(syn_buf)[cur_si->si_idx].sp_flags & HL_CONTAINED))
  30. !     return TRUE;
  31.       }
  32.   
  33.       if (list == NULL)
  34. --- 5560,5575 ----
  35.       /* If spp has a "containedin" list and "cur_si" is in it, return TRUE. */
  36.       if (cur_si != NULL && ssp->cont_in_list != NULL)
  37.       {
  38. !     /* Ignore transparent items without a contains argument.  Double check
  39. !      * that we don't go back past the first one. */
  40. !     while ((cur_si->si_flags & HL_TRANS_CONT)
  41. !         && cur_si > (stateitem_T *)(current_state.ga_data))
  42.           --cur_si;
  43. !     /* cur_si->si_idx is -1 for keywords, these never contain anything. */
  44. !     if (cur_si->si_idx >= 0 && in_id_list(NULL, ssp->cont_in_list,
  45.           &(SYN_ITEMS(syn_buf)[cur_si->si_idx].sp_syn),
  46.             SYN_ITEMS(syn_buf)[cur_si->si_idx].sp_flags & HL_CONTAINED))
  47. !         return TRUE;
  48.       }
  49.   
  50.       if (list == NULL)
  51. *** ../vim61.192/src/version.c    Mon Sep 23 21:12:18 2002
  52. --- src/version.c    Mon Sep 23 21:14:16 2002
  53. ***************
  54. *** 608,609 ****
  55. --- 608,611 ----
  56.   {   /* Add new patch number below this line */
  57. + /**/
  58. +     193,
  59.   /**/
  60.  
  61. -- 
  62. This planet has -- or rather had -- a problem, which was this: most
  63. of the people living on it were unhappy for pretty much of the time.
  64. Many solutions were suggested for this problem, but most of these
  65. were largely concerned with the movements of small green pieces of
  66. paper, which is odd because on the whole it wasn't the small green
  67. pieces of paper that were unhappy.
  68.         -- Douglas Adams, "The Hitchhiker's Guide to the Galaxy"
  69.  
  70.  ///  Bram Moolenaar -- Bram@moolenaar.net -- http://www.moolenaar.net  \\\
  71. ///          Creator of Vim - Vi IMproved -- http://www.vim.org          \\\
  72. \\\           Project leader for A-A-P -- http://www.a-a-p.org           ///
  73.  \\\ Lord Of The Rings helps Uganda - http://iccf-holland.org/lotr.html ///
  74.