Deleted Added
full compact
fflush.c (71579) fflush.c (72373)
1/*-
2 * Copyright (c) 1990, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * Chris Torek.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 25 unchanged lines hidden (view full) ---

34 * SUCH DAMAGE.
35 */
36
37#if defined(LIBC_SCCS) && !defined(lint)
38#if 0
39static char sccsid[] = "@(#)fflush.c 8.1 (Berkeley) 6/4/93";
40#endif
41static const char rcsid[] =
1/*-
2 * Copyright (c) 1990, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * This code is derived from software contributed to Berkeley by
6 * Chris Torek.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 25 unchanged lines hidden (view full) ---

34 * SUCH DAMAGE.
35 */
36
37#if defined(LIBC_SCCS) && !defined(lint)
38#if 0
39static char sccsid[] = "@(#)fflush.c 8.1 (Berkeley) 6/4/93";
40#endif
41static const char rcsid[] =
42 "$FreeBSD: head/lib/libc/stdio/fflush.c 71579 2001-01-24 13:01:12Z deischen $";
42 "$FreeBSD: head/lib/libc/stdio/fflush.c 72373 2001-02-11 22:06:43Z deischen $";
43#endif /* LIBC_SCCS and not lint */
44
45#include "namespace.h"
46#include <errno.h>
47#include <stdio.h>
48#include "un-namespace.h"
49#include "libc_private.h"
50#include "local.h"
51
43#endif /* LIBC_SCCS and not lint */
44
45#include "namespace.h"
46#include <errno.h>
47#include <stdio.h>
48#include "un-namespace.h"
49#include "libc_private.h"
50#include "local.h"
51
52static int sflush_locked(FILE *);
53
52/*
53 * Flush a single file, or (if fp is NULL) all files.
54 * MT-safe version
55 */
56int
57fflush(FILE *fp)
58{
59 int retval;
60
61 if (fp == NULL)
54/*
55 * Flush a single file, or (if fp is NULL) all files.
56 * MT-safe version
57 */
58int
59fflush(FILE *fp)
60{
61 int retval;
62
63 if (fp == NULL)
62 return (_fwalk(__sflush));
64 return (_fwalk(sflush_locked));
63 FLOCKFILE(fp);
64 if ((fp->_flags & (__SWR | __SRW)) == 0) {
65 errno = EBADF;
66 retval = EOF;
67 } else
68 retval = __sflush(fp);
69 FUNLOCKFILE(fp);
70 return (retval);

--- 4 unchanged lines hidden (view full) ---

75 * Non-MT-safe version
76 */
77int
78__fflush(FILE *fp)
79{
80 int retval;
81
82 if (fp == NULL)
65 FLOCKFILE(fp);
66 if ((fp->_flags & (__SWR | __SRW)) == 0) {
67 errno = EBADF;
68 retval = EOF;
69 } else
70 retval = __sflush(fp);
71 FUNLOCKFILE(fp);
72 return (retval);

--- 4 unchanged lines hidden (view full) ---

77 * Non-MT-safe version
78 */
79int
80__fflush(FILE *fp)
81{
82 int retval;
83
84 if (fp == NULL)
83 return (_fwalk(__sflush));
85 return (_fwalk(sflush_locked));
84 if ((fp->_flags & (__SWR | __SRW)) == 0) {
85 errno = EBADF;
86 retval = EOF;
87 } else
88 retval = __sflush(fp);
89 return (retval);
90}
91

--- 23 unchanged lines hidden (view full) ---

115 t = (*fp->_write)(fp->_cookie, (char *)p, n);
116 if (t <= 0) {
117 fp->_flags |= __SERR;
118 return (EOF);
119 }
120 }
121 return (0);
122}
86 if ((fp->_flags & (__SWR | __SRW)) == 0) {
87 errno = EBADF;
88 retval = EOF;
89 } else
90 retval = __sflush(fp);
91 return (retval);
92}
93

--- 23 unchanged lines hidden (view full) ---

117 t = (*fp->_write)(fp->_cookie, (char *)p, n);
118 if (t <= 0) {
119 fp->_flags |= __SERR;
120 return (EOF);
121 }
122 }
123 return (0);
124}
125
126static int
127sflush_locked(FILE *fp)
128{
129 int ret;
130
131 FLOCKFILE(fp);
132 ret = __sflush(fp);
133 FUNLOCKFILE(fp);
134 return (ret);
135}