LCOV - code coverage report
Current view: top level - lib - vasprintf.c (source / functions) Hit Total Coverage
Test: coreutils.info Lines: 6 10 60.0 %
Date: 2018-01-30 Functions: 1 1 100.0 %

          Line data    Source code
       1             : /* -*- buffer-read-only: t -*- vi: set ro: */
       2             : /* DO NOT EDIT! GENERATED AUTOMATICALLY! */
       3             : #line 1
       4             : /* Formatted output to strings.
       5             :    Copyright (C) 1999, 2002, 2006-2008 Free Software Foundation, Inc.
       6             : 
       7             :    This program 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, or (at your option)
      10             :    any later version.
      11             : 
      12             :    This program 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 along
      18             :    with this program; if not, write to the Free Software Foundation,
      19             :    Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.  */
      20             : 
      21             : #include <config.h>
      22             : 
      23             : /* Specification.  */
      24             : #ifdef IN_LIBASPRINTF
      25             : # include "vasprintf.h"
      26             : #else
      27             : # include <stdio.h>
      28             : #endif
      29             : 
      30             : #include <errno.h>
      31             : #include <limits.h>
      32             : #include <stdlib.h>
      33             : 
      34         600 : #include "vasnprintf.h"
      35             : 
      36             : int
      37         600 : vasprintf (char **resultp, const char *format, va_list args)
      38         600 : {
      39           0 :   size_t length;
      40             :   char *result = vasnprintf (NULL, &length, format, args);
      41         600 :   if (result == NULL)
      42             :     return -1;
      43           0 : 
      44           0 :   if (length > INT_MAX)
      45           0 :     {
      46             :       free (result);
      47             :       errno = EOVERFLOW;
      48         600 :       return -1;
      49             :     }
      50         600 : 
      51             :   *resultp = result;
      52             :   /* Return the number of resulting bytes, excluding the trailing NUL.  */
      53             :   return length;
      54             : }

Generated by: LCOV version 1.10