diff options
author | Fumitoshi UKAI <ukai@debian.or.jp> | 2002-01-16 19:02:12 +0000 |
---|---|---|
committer | Fumitoshi UKAI <ukai@debian.or.jp> | 2002-01-16 19:02:12 +0000 |
commit | 970d17ca4c52b32186910059bca87f8e6424050b (patch) | |
tree | 6733507b99f2542c424c5a9eb309c5c4ffca0e20 /main.c | |
parent | [w3m-dev 02861] IPv6 configuration check (diff) | |
download | w3m-970d17ca4c52b32186910059bca87f8e6424050b.tar.gz w3m-970d17ca4c52b32186910059bca87f8e6424050b.zip |
[w3m-dev 02862] SIGPIPE for migemo support
* main.c (SigPipe): added
* main.c (MAIN): signal(SIGPIPE, )
* search.c: #include <errno.h>
* search.c (migemostr): check fflush() error
* search.c (migemostr): check result string (empty is err)
* search.c (migemostr): if error occured, disable use_migemo
From: Fumitoshi UKAI <ukai@debian.or.jp>
Diffstat (limited to '')
-rw-r--r-- | main.c | 21 |
1 files changed, 20 insertions, 1 deletions
@@ -1,4 +1,4 @@ -/* $Id: main.c,v 1.62 2002/01/16 16:49:54 ukai Exp $ */ +/* $Id: main.c,v 1.63 2002/01/16 19:02:15 ukai Exp $ */ #define MAINPROGRAM #include "fm.h" #include <signal.h> @@ -54,6 +54,10 @@ static MySignalHandler resize_handler(SIGNAL_ARG); static void resize_screen(void); #endif +#ifdef SIGPIPE +static MySignalHandler SigPipe(SIGNAL_ARG); +#endif + #ifdef USE_MARK static char *MarkString = NULL; #endif @@ -708,6 +712,9 @@ MAIN(int argc, char **argv, char **envp) #ifdef SIGCHLD signal(SIGCHLD, sig_chld); #endif +#ifdef SIGPIPE + signal(SIGPIPE, SigPipe); +#endif orig_GC_warn_proc = GC_set_warn_proc(wrap_GC_warn_proc); err_msg = Strnew(); @@ -1206,6 +1213,18 @@ resize_screen(void) } #endif /* SIGWINCH */ +#ifdef SIGPIPE +static MySignalHandler +SigPipe(SIGNAL_ARG) +{ +#ifdef USE_MIGEMO + init_migemo(); +#endif + signal(SIGPIPE, SigPipe); + SIGNAL_RETURN; +} +#endif + /* * Command functions: These functions are called with a keystroke. */ |