summaryrefslogtreecommitdiff
path: root/gcc/fixinc/server.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/fixinc/server.c')
-rw-r--r--gcc/fixinc/server.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/gcc/fixinc/server.c b/gcc/fixinc/server.c
index 2a195a61eb4..51f86b50e19 100644
--- a/gcc/fixinc/server.c
+++ b/gcc/fixinc/server.c
@@ -178,14 +178,17 @@ load_data (fp)
* Make certain the server process is dead, close the
* pipes to it and from it, finally NULL out the file pointers
*/
-static void
+void
close_server ()
{
- kill ((pid_t) server_id, SIGKILL);
- server_id = NULLPROCESS;
- fclose (server_pair.pf_read);
- fclose (server_pair.pf_write);
- server_pair.pf_read = server_pair.pf_write = (FILE *) NULL;
+ if (server_id != NULLPROCESS)
+ {
+ kill ((pid_t) server_id, SIGKILL);
+ server_id = NULLPROCESS;
+ fclose (server_pair.pf_read);
+ fclose (server_pair.pf_write);
+ server_pair.pf_read = server_pair.pf_write = (FILE *) NULL;
+ }
}
/*