OpenCoverage

setlinebuf.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/bash/src/lib/sh/setlinebuf.c
Source codeSwitch to Preprocessed file
LineSourceCount
1/* setlinebuf.c - line-buffer a stdio stream. */-
2-
3/* Copyright (C) 1997 Free Software Foundation, Inc.-
4-
5 This file is part of GNU Bash, the Bourne Again SHell.-
6-
7 Bash is free software: you can redistribute it and/or modify-
8 it under the terms of the GNU General Public License as published by-
9 the Free Software Foundation, either version 3 of the License, or-
10 (at your option) any later version.-
11-
12 Bash is distributed in the hope that it will be useful,-
13 but WITHOUT ANY WARRANTY; without even the implied warranty of-
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the-
15 GNU General Public License for more details.-
16-
17 You should have received a copy of the GNU General Public License-
18 along with Bash. If not, see <http://www.gnu.org/licenses/>.-
19*/-
20-
21#include <config.h>-
22-
23#include <stdio.h>-
24-
25#include <xmalloc.h>-
26-
27#if defined (USING_BASH_MALLOC)-
28# define LBUF_BUFSIZE 1008-
29#else-
30# define LBUF_BUFSIZE BUFSIZ-
31#endif-
32-
33/* Cause STREAM to buffer lines as opposed to characters or blocks. */-
34int-
35sh_setlinebuf (stream)-
36 FILE *stream;-
37{-
38 char *local_linebuf;-
39-
40#if !defined (HAVE_SETLINEBUF) && !defined (HAVE_SETVBUF)-
41 return (0);-
42#endif-
43-
44#if defined (USING_BASH_MALLOC)-
45 local_linebuf = (char *)xmalloc (LBUF_BUFSIZE);-
46#else-
47 local_linebuf = (char *)NULL;-
48#endif-
49-
50#if defined (HAVE_SETVBUF)-
51-
52# if defined (SETVBUF_REVERSED)-
53 return (setvbuf (stream, _IOLBF, local_linebuf, LBUF_BUFSIZE));-
54# else /* !SETVBUF_REVERSED */-
55 return (setvbuf (stream, local_linebuf, _IOLBF, LBUF_BUFSIZE));
executed 10864 times by 1 test: return (setvbuf (stream, local_linebuf, 1 , 1008));
Executed by:
  • Self test
10864
56# endif /* !SETVBUF_REVERSED */-
57# else /* !HAVE_SETVBUF */-
58-
59 setlinebuf (stream);-
60 return (0);-
61-
62#endif /* !HAVE_SETVBUF */-
63}-
Source codeSwitch to Preprocessed file

Generated by Squish Coco 4.1.2