Edit

kc3-lang/gnulib/lib/strndup.c

Branch :

  • Show log

    Commit

  • Author : Jim Meyering
    Date : 1998-12-07 03:12:10
    Hash : cf42d3e5
    Message : ansideclify

  • lib/strndup.c
  • /* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
    
    NOTE: The canonical source of this file is maintained with the GNU C Library.
    Bugs can be reported to bug-glibc@prep.ai.mit.edu.
    
    This program is free software; you can redistribute it and/or modify it
    under the terms of the GNU General Public License as published by the
    Free Software Foundation; either version 2, or (at your option) any
    later version.
    
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
    
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software Foundation,
    Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
    
    #ifdef HAVE_CONFIG_H
    # include "config.h"
    #endif
    
    #include <stdio.h>
    #include <sys/types.h>
    
    #ifdef STDC_HEADERS
    # include <string.h>
    # include <stdlib.h>
    #else
    char *malloc ();
    #endif
    
    /* Duplicate S, returning an identical malloc'd string.  */
    char *
    strndup (const char *s, size_t n)
    {
      char *new = malloc (n + 1);
    
      if (new == NULL)
        return NULL;
    
      new[n] = '\0';
      return (char *) memcpy (new, s, n);
    }