~ubuntu-branches/ubuntu/edgy/e2fsprogs/edgy

« back to all changes in this revision

Viewing changes to lib/et/vfprintf.c

  • Committer: Bazaar Package Importer
  • Author(s): Yann Dirson
  • Date: 2002-03-21 23:58:48 UTC
  • Revision ID: james.westby@ubuntu.com-20020321235848-cmmy98hy0nihp922
Tags: upstream-1.27
ImportĀ upstreamĀ versionĀ 1.27

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * Copyright (c) 1988 Regents of the University of California.
 
3
 * All rights reserved.
 
4
 *
 
5
 * Redistribution and use in source and binary forms are permitted
 
6
 * provided that the above copyright notice and this paragraph are
 
7
 * duplicated in all such forms and that any documentation,
 
8
 * advertising materials, and other materials related to such
 
9
 * distribution and use acknowledge that the software was developed
 
10
 * by the University of California, Berkeley.  The name of the
 
11
 * University may not be used to endorse or promote products derived
 
12
 * from this software without specific prior written permission.
 
13
 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
 
14
 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
 
15
 * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
 
16
 */
 
17
 
 
18
#if defined(LIBC_SCCS) && !defined(lint)
 
19
static char sccsid[] = "@(#)vfprintf.c  5.2 (Berkeley) 6/27/88";
 
20
#endif /* LIBC_SCCS and not lint */
 
21
 
 
22
#if !HAVE_VPRINTF && HAVE_DOPRNT
 
23
#include <stdio.h>
 
24
#include <varargs.h>
 
25
 
 
26
int
 
27
vfprintf(iop, fmt, ap)
 
28
        FILE *iop;
 
29
        char *fmt;
 
30
        va_list ap;
 
31
{
 
32
        int len;
 
33
        char localbuf[BUFSIZ];
 
34
 
 
35
        if (iop->_flag & _IONBF) {
 
36
                iop->_flag &= ~_IONBF;
 
37
                iop->_ptr = iop->_base = localbuf;
 
38
                len = _doprnt(fmt, ap, iop);
 
39
                (void) fflush(iop);
 
40
                iop->_flag |= _IONBF;
 
41
                iop->_base = NULL;
 
42
                iop->_bufsiz = 0;
 
43
                iop->_cnt = 0;
 
44
        } else
 
45
                len = _doprnt(fmt, ap, iop);
 
46
 
 
47
        return (ferror(iop) ? EOF : len);
 
48
}
 
49
#endif /* !HAVE_VPRINTF */