Subversion Repositories Kolibri OS

Rev

Rev 4874 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
4349 Serge 1
/* Copyright 2005, 2007 Shaun Jackman
2
 * Permission to use, copy, modify, and distribute this software
3
 * is freely granted, provided that this notice is preserved.
4
 */
5
/* doc in dprintf.c */
6
 
7
#include <_ansi.h>
8
#include 
9
#include 
10
#include 
11
#include 
12
#include 
13
#include "local.h"
14
 
15
int
16
_DEFUN(_vdprintf_r, (ptr, fd, format, ap),
17
       struct _reent *ptr _AND
18
       int fd _AND
4921 Serge 19
       const char *__restrict format _AND
4349 Serge 20
       va_list ap)
21
{
22
  char *p;
23
  char buf[512];
24
  size_t n = sizeof buf;
25
 
26
  _REENT_SMALL_CHECK_INIT (ptr);
27
  p = _vasnprintf_r (ptr, buf, &n, format, ap);
28
  if (!p)
29
    return -1;
30
  n = _write_r (ptr, fd, p, n);
31
  if (p != buf)
32
    _free_r (ptr, p);
33
  return n;
34
}
35
 
36
#ifndef _REENT_ONLY
37
 
38
int
39
_DEFUN(vdprintf, (fd, format, ap),
40
       int fd _AND
4921 Serge 41
       const char *__restrict format _AND
4349 Serge 42
       va_list ap)
43
{
44
  return _vdprintf_r (_REENT, fd, format, ap);
45
}
46
 
47
#endif /* ! _REENT_ONLY */