Allocate -o OUTFILE buffer only if needed

   text	   data	    bss	    dec	    hex	filename
 238258	    668	  28676	 267602	  41552	strace.before
 238274	    668	  20484	 259426	  3f562	strace

* strace.c (main): Allocate -o OUTFILE buffer only if needed:
unused buffer in bss is not entirely free.

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
diff --git a/strace.c b/strace.c
index 64e90e7..0da9afb 100644
--- a/strace.c
+++ b/strace.c
@@ -1182,7 +1182,9 @@
 	}
 
 	if (!outfname || outfname[0] == '|' || outfname[0] == '!') {
-		static char buf[BUFSIZ];
+		char *buf = malloc(BUFSIZ);
+		if (!buf)
+			die_out_of_memory();
 		setvbuf(outf, buf, _IOLBF, BUFSIZ);
 	}
 	if (outfname && optind < argc) {