/[m4]/m4/src/stackovf.c
ViewVC logotype

Diff of /m4/src/stackovf.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.7 by gary, Thu Sep 20 03:48:05 2001 UTC revision 1.8 by gary, Sun Sep 30 14:43:38 2001 UTC
# Line 118  extern int     sigstack        (struct sigstack *, Line 118  extern int     sigstack        (struct sigstack *,
118  extern int      sigvec          (int, struct sigvec *, struct sigvec *);  extern int      sigvec          (int, struct sigvec *, struct sigvec *);
119  #endif  #endif
120    
 static const char *stackbuf;  
121  static const char *stackbot;  static const char *stackbot;
122  static const char *stackend;  static const char *stackend;
123  static const char *arg0;  static const char *arg0;
# Line 336  setup_stackovf_trap (char *const *argv, Line 335  setup_stackovf_trap (char *const *argv,
335    {    {
336      stack_t ss;      stack_t ss;
337    
     stackbuf = (char *) xmalloc (SIGSTKSZ);  
   
338      ss.ss_size = SIGSTKSZ;      ss.ss_size = SIGSTKSZ;
339      ss.ss_sp = (void *) stackbuf;      ss.ss_sp = xmalloc (ss.ss_size);
340      ss.ss_flags = 0;      ss.ss_flags = 0;
341      if (sigaltstack (&ss, (stack_t *) 0) < 0)      if (sigaltstack (&ss, (stack_t *) 0) < 0)
342        {        {
343          xfree (stackbuf);          xfree (ss.ss_sp);
344          error (1, errno, "sigaltstack");          error (1, errno, "sigaltstack");
345        }        }
346    }    }
# Line 353  setup_stackovf_trap (char *const *argv, Line 350  setup_stackovf_trap (char *const *argv,
350    
351    {    {
352      struct sigstack ss;      struct sigstack ss;
353      stackbuf = (char *) xmalloc (2 * SIGSTKSZ);      char *stackbuf = xmalloc (2 * SIGSTKSZ);
354    
355      ss.ss_sp = stackbuf + SIGSTKSZ;      ss.ss_sp = stackbuf + SIGSTKSZ;
356      ss.ss_onstack = 0;      ss.ss_onstack = 0;
# Line 411  Error - Do not know how to catch signals Line 408  Error - Do not know how to catch signals
408    
409  }  }
410    
 void  
 stackovf_exit (void)  
 {  
   XFREE (stackbuf);  
 }  
   
411  #endif /* USE_STACKOVF */  #endif /* USE_STACKOVF */

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.8

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26