Mercurial > gftp.yaz
diff src/gtk/menu-items.c @ 42:cd169e4789df
2002-10-29 Brian Masney <masneyb@gftp.org>
* src/gtk/chmod_dialog.c src/gtk/delete_dialog.c src/gtk/gftp-gtk.c
src/gtk/gftp-gtk.h src/gtk/menu-items.c src/gtk/misc-gtk.c
src/gtk/mkdir_dialog.c src/gtk/rename_dialog.c src/gtk/transfer.c -
improved and simplified signal handling code
author | masneyb |
---|---|
date | Wed, 30 Oct 2002 03:34:37 +0000 |
parents | 4bcfaf6307b5 |
children | 311e29c40ed6 |
line wrap: on
line diff
--- a/src/gtk/menu-items.c Wed Oct 30 02:53:21 2002 +0000 +++ b/src/gtk/menu-items.c Wed Oct 30 03:34:37 2002 +0000 @@ -23,8 +23,6 @@ static int do_change_dir ( gftp_window_data * wdata, char * directory ); static void *do_change_dir_thread ( void * data ); -static RETSIGTYPE sig_chdirquit ( int signo ); -static sigjmp_buf chdirenvir; void change_setting (gftp_window_data * wdata, int menuitem, GtkWidget * checkmenu) @@ -554,9 +552,8 @@ if (wdata->request->use_threads) { - sj = sigsetjmp (chdirenvir, 1); - signal (SIGINT, sig_chdirquit); - signal (SIGALRM, sig_chdirquit); + sj = sigsetjmp (jmp_environment, 1); + use_jmp_environment = 1; } else sj = 0; @@ -578,10 +575,7 @@ } if (wdata->request->use_threads) - { - signal (SIGINT, SIG_DFL); - signal (SIGALRM, SIG_IGN); - } + use_jmp_environment = 0; wdata->request->user_data = NULL; wdata->request->stopable = 0; @@ -589,14 +583,6 @@ } -static RETSIGTYPE -sig_chdirquit (int signo) -{ - signal (signo, sig_chdirquit); - siglongjmp (chdirenvir, signo == SIGINT ? 1 : 2); -} - - void clearlog (gpointer data) {