From a7123f0edfea20a68e64e447dc6ca0c32736be0e Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Fri, 1 Oct 1999 16:09:12 +0000 Subject: Update. 1999-10-01 Andreas Jaeger * locale/programs/ld-collate.c (insert_value): Add cast to avoid warning. * intl/finddomain.c (_nl_find_domain): Likewise. 1999-09-30 Andreas Schwab * sysdeps/unix/sysv/linux/alpha/ioperm.c: Disable debug messages. 1999-09-30 Andreas Jaeger * sysdeps/i386/lshift.S: Correct assembler commands to fix warnings. * sysdeps/i386/rshift.S: Likewise. * sysdeps/i386/strchrnul.S: Likewise. * sysdeps/i386/strchr.S: Likewise. Patch by Michael Deutschmann , PR libc/1339. 1999-09-30 Andreas Jaeger * manual/examples/pipe.c: Close other end of pipe to make example work. 1999-10-01 Ulrich Drepper * timezone/checktab.awk: Update from tzcode1999g. * timezone/tzselect.ksh: Likewise. * timezone/africa: Update from tzdata1999g. * timezone/asia: Likewise. * timezone/australasia: Likewise. * timezone/europe: Likewise. * timezone/northamerica: Likewise. * timezone/southamerica: Likewise. * timezone/iso3166.tab: Likewise. * timezone/zone.tab: Likewise. been renamed to getipnodebyname. Move flags around. --- manual/examples/pipe.c | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) (limited to 'manual/examples') diff --git a/manual/examples/pipe.c b/manual/examples/pipe.c index 054550fec6..92d339a7b9 100644 --- a/manual/examples/pipe.c +++ b/manual/examples/pipe.c @@ -5,7 +5,7 @@ /* Read characters from the pipe and echo them to @code{stdout}. */ -void +void read_from_pipe (int file) { FILE *stream; @@ -18,7 +18,7 @@ read_from_pipe (int file) /* Write some random text to the pipe. */ -void +void write_to_pipe (int file) { FILE *stream; @@ -35,7 +35,7 @@ main (void) int mypipe[2]; /*@group*/ - /* Create the pipe. */ + /* Create the pipe. */ if (pipe (mypipe)) { fprintf (stderr, "Pipe failed.\n"); @@ -43,23 +43,27 @@ main (void) } /*@end group*/ - /* Create the child process. */ + /* Create the child process. */ pid = fork (); if (pid == (pid_t) 0) { - /* This is the child process. */ + /* This is the child process. + Close other end first. */ + close (mypipe[1]); read_from_pipe (mypipe[0]); return EXIT_SUCCESS; } else if (pid < (pid_t) 0) { - /* The fork failed. */ + /* The fork failed. */ fprintf (stderr, "Fork failed.\n"); return EXIT_FAILURE; } else { - /* This is the parent process. */ + /* This is the parent process. + Close other end first. */ + close (mypipe[0]); write_to_pipe (mypipe[1]); return EXIT_SUCCESS; } -- cgit 1.4.1