Patch 8.2.3673
Problem:    Crash when allocating signal stack fails.
Solution:   Only using sourcing info when available. (closes #9215)
Files:      src/globals.h, src/message.c


*** ../vim-8.2.3672/src/globals.h       2021-11-18 18:52:08.820648765 +0000
--- src/globals.h       2021-11-25 13:36:48.203403125 +0000
***************
*** 288,293 ****
--- 288,294 ----
   * Current context is at ga_len - 1.
   */
  EXTERN garray_T       exestack INIT5(0, 0, sizeof(estack_T), 50, NULL);
+ #define HAVE_SOURCING_INFO  (exestack.ga_data != NULL && exestack.ga_len > 0)
  // name of error message source
  #define SOURCING_NAME (((estack_T *)exestack.ga_data)[exestack.ga_len - 
1].es_name)
  // line number in the message source or zero
*** ../vim-8.2.3672/src/message.c       2021-09-10 15:58:24.446743066 +0100
--- src/message.c       2021-11-25 13:37:11.351424648 +0000
***************
*** 446,452 ****
      static int
  other_sourcing_name(void)
  {
!     if (SOURCING_NAME != NULL)
      {
        if (last_sourcing_name != NULL)
            return STRCMP(SOURCING_NAME, last_sourcing_name) != 0;
--- 446,452 ----
      static int
  other_sourcing_name(void)
  {
!     if (HAVE_SOURCING_INFO && SOURCING_NAME != NULL)
      {
        if (last_sourcing_name != NULL)
            return STRCMP(SOURCING_NAME, last_sourcing_name) != 0;
***************
*** 465,471 ****
  {
      char_u    *Buf, *p;
  
!     if (SOURCING_NAME != NULL && other_sourcing_name())
      {
        char_u      *sname = estack_sfile(ESTACK_NONE);
        char_u      *tofree = sname;
--- 465,471 ----
  {
      char_u    *Buf, *p;
  
!     if (HAVE_SOURCING_INFO && SOURCING_NAME != NULL && other_sourcing_name())
      {
        char_u      *sname = estack_sfile(ESTACK_NONE);
        char_u      *tofree = sname;
*** ../vim-8.2.3672/src/version.c       2021-11-25 13:26:16.034041048 +0000
--- src/version.c       2021-11-25 13:38:45.511500090 +0000
***************
*** 759,760 ****
--- 759,762 ----
  {   /* Add new patch number below this line */
+ /**/
+     3673,
  /**/

-- 
"Software is like sex... it's better when it's free."
                -- Linus Torvalds, initiator of the free Linux OS
Makes me wonder what FSF stands for...?

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///                                                                      \\\
\\\        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/vim_dev/20211125134005.CAF441C0A05%40moolenaar.net.

Raspunde prin e-mail lui