Loading ...
Sorry, an error occurred while loading the content.
 

Patch 7.2b.023

Expand Messages
  • Bram Moolenaar
    Patch 7.2b.023 Problem: Crash when using the result of synstack(0,0). (Matt Wozniski) Solution: Check for v_list to be NULL in a few more places. Files:
    Message 1 of 1 , Jul 27 7:08 AM
      Patch 7.2b.023
      Problem: Crash when using the result of synstack(0,0). (Matt Wozniski)
      Solution: Check for v_list to be NULL in a few more places.
      Files: src/eval.c


      *** ../vim-7.2b.022/src/eval.c Thu Jul 24 18:44:23 2008
      --- src/eval.c Sun Jul 27 14:31:11 2008
      ***************
      *** 1275,1281 ****
      if (dolist && tv.v_type == VAR_LIST)
      {
      ga_init2(&ga, (int)sizeof(char), 80);
      ! list_join(&ga, tv.vval.v_list, (char_u *)"\n", TRUE, 0);
      ga_append(&ga, NUL);
      retval = (char_u *)ga.ga_data;
      }
      --- 1275,1282 ----
      if (dolist && tv.v_type == VAR_LIST)
      {
      ga_init2(&ga, (int)sizeof(char), 80);
      ! if (tv.vval.v_list != NULL)
      ! list_join(&ga, tv.vval.v_list, (char_u *)"\n", TRUE, 0);
      ga_append(&ga, NUL);
      retval = (char_u *)ga.ga_data;
      }
      ***************
      *** 1380,1385 ****
      --- 1381,1387 ----
      /*
      * Evaluate an expression to a list with suggestions.
      * For the "expr:" part of 'spellsuggest'.
      + * Returns NULL when there is an error.
      */
      list_T *
      eval_spell_expr(badword, expr)
      ***************
      *** 1587,1594 ****
      # endif

      /*
      ! * Call vimL function "func" and return the result as a list
      * Uses argv[argc] for the function arguments.
      */
      void *
      call_func_retlist(func, argc, argv, safe)
      --- 1589,1597 ----
      # endif

      /*
      ! * Call vimL function "func" and return the result as a List.
      * Uses argv[argc] for the function arguments.
      + * Returns NULL when there is something wrong.
      */
      void *
      call_func_retlist(func, argc, argv, safe)
      ***************
      *** 5817,5822 ****
      --- 5820,5827 ----
      {
      listitem_T *item1, *item2;

      + if (l1 == NULL || l2 == NULL)
      + return FALSE;
      if (l1 == l2)
      return TRUE;
      if (list_len(l1) != list_len(l2))
      ***************
      *** 5855,5860 ****
      --- 5860,5867 ----
      dictitem_T *item2;
      int todo;

      + if (d1 == NULL || d2 == NULL)
      + return FALSE;
      if (d1 == d2)
      return TRUE;
      if (dict_len(d1) != dict_len(d2))
      ***************
      *** 6243,6248 ****
      --- 6250,6258 ----
      {
      list_T *l;

      + if (l1 == NULL || l2 == NULL)
      + return FAIL;
      +
      /* make a copy of the first list. */
      l = list_copy(l1, FALSE, 0);
      if (l == NULL)
      *** ../vim-7.2b.022/src/version.c Sat Jul 26 16:03:55 2008
      --- src/version.c Sun Jul 27 15:54:45 2008
      ***************
      *** 678,679 ****
      --- 678,681 ----
      { /* Add new patch number below this line */
      + /**/
      + 23,
      /**/

      --
      ARTHUR: Well, I AM king...
      DENNIS: Oh king, eh, very nice. An' how'd you get that, eh? By exploitin'
      the workers -- by 'angin' on to outdated imperialist dogma which
      perpetuates the economic an' social differences in our society! If
      there's ever going to be any progress--
      The Quest for the Holy Grail (Monty Python)

      /// Bram Moolenaar -- Bram@... -- 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 ///

      --~--~---------~--~----~------------~-------~--~----~
      You received this message from the "vim_dev" maillist.
      For more information, visit http://www.vim.org/maillist.php
      -~----------~----~----~----~------~----~------~--~---
    Your message has been successfully submitted and would be delivered to recipients shortly.