/[guile]/guile/guile-core/libguile/scmsigs.c
ViewVC logotype

Diff of /guile/guile-core/libguile/scmsigs.c

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

revision 1.72 by mvo, Thu Oct 10 18:11:06 2002 UTC revision 1.73 by mvo, Fri Oct 11 13:02:50 2002 UTC
# Line 129  take_signal (int signum) Line 129  take_signal (int signum)
129  {  {
130    if (signum >= 0 && signum < NSIG)    if (signum >= 0 && signum < NSIG)
131      {      {
132    #ifdef USE_THREADS
133        SCM thread = SCM_VECTOR_REF (signal_handler_threads, signum);        SCM thread = SCM_VECTOR_REF (signal_handler_threads, signum);
134        scm_i_queue_async_cell (SCM_VECTOR_REF(signal_handler_cells, signum),        scm_i_queue_async_cell (SCM_VECTOR_REF(signal_handler_cells, signum),
135                                scm_i_thread_root (thread));                                scm_i_thread_root (thread));
136    #else
137          scm_i_queue_async_cell (SCM_VECTOR_REF(signal_handler_cells, signum),
138                                  scm_root);
139    #endif
140      }      }
141  #ifndef HAVE_SIGACTION  #ifndef HAVE_SIGACTION
142    signal (signum, take_signal);    signal (signum, take_signal);
# Line 213  SCM_DEFINE (scm_sigaction_for_thread, "s Line 218  SCM_DEFINE (scm_sigaction_for_thread, "s
218        action.sa_flags |= SCM_INUM (flags);        action.sa_flags |= SCM_INUM (flags);
219      }      }
220    sigemptyset (&action.sa_mask);    sigemptyset (&action.sa_mask);
221    #endif
222    
223    #ifdef USE_THREAD
224    if (SCM_UNBNDP (thread))    if (SCM_UNBNDP (thread))
225      thread = scm_current_thread ();      thread = scm_current_thread ();
226    else    else
227      SCM_VALIDATE_THREAD (4, thread);      SCM_VALIDATE_THREAD (4, thread);
228    #else
229      thread = SCM_BOOL_F;
230  #endif  #endif
231    
232    SCM_DEFER_INTS;    SCM_DEFER_INTS;
233    old_handler = SCM_VECTOR_REF(*signal_handlers, csig);    old_handler = SCM_VECTOR_REF(*signal_handlers, csig);
234    if (SCM_UNBNDP (handler))    if (SCM_UNBNDP (handler))

Legend:
Removed from v.1.72  
changed lines
  Added in v.1.73

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