diff options
author | midipix <writeonce@midipix.org> | 2015-03-15 21:08:54 -0400 |
---|---|---|
committer | midipix <writeonce@midipix.org> | 2015-03-15 21:08:54 -0400 |
commit | 18bc92cb83fdf0f0472432fb7c30914a9cd4df01 (patch) | |
tree | 2d11f8c8d084e113cae1ef6175fc2e888e570f58 /libiberty/strndup.c | |
parent | cf7e0e7656729af8bd8f3bb86c4d51f1089a0c37 (diff) | |
download | cbb-gcc-4.6.4-18bc92cb83fdf0f0472432fb7c30914a9cd4df01.tar.bz2 cbb-gcc-4.6.4-18bc92cb83fdf0f0472432fb7c30914a9cd4df01.tar.xz |
libiberty: remove source files that either duplicate functionality
already present in all modern libc implementations, or are
incompatible with modern development environments, or both.
Diffstat (limited to 'libiberty/strndup.c')
-rw-r--r-- | libiberty/strndup.c | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/libiberty/strndup.c b/libiberty/strndup.c deleted file mode 100644 index 9e9b4e299..000000000 --- a/libiberty/strndup.c +++ /dev/null @@ -1,55 +0,0 @@ -/* Implement the strndup function. - Copyright (C) 2005 Free Software Foundation, Inc. - Written by Kaveh R. Ghazi <ghazi@caip.rutgers.edu>. - -This file is part of the libiberty library. -Libiberty is free software; you can redistribute it and/or -modify it under the terms of the GNU Library General Public -License as published by the Free Software Foundation; either -version 2 of the License, or (at your option) any later version. - -Libiberty 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 -Library General Public License for more details. - -You should have received a copy of the GNU Library General Public -License along with libiberty; see the file COPYING.LIB. If -not, write to the Free Software Foundation, Inc., 51 Franklin Street - Fifth Floor, -Boston, MA 02110-1301, USA. */ - -/* - -@deftypefn Extension char* strndup (const char *@var{s}, size_t @var{n}) - -Returns a pointer to a copy of @var{s} with at most @var{n} characters -in memory obtained from @code{malloc}, or @code{NULL} if insufficient -memory was available. The result is always NUL terminated. - -@end deftypefn - -*/ - -#include "ansidecl.h" -#include <stddef.h> - -extern size_t strlen (const char*); -extern PTR malloc (size_t); -extern PTR memcpy (PTR, const PTR, size_t); - -char * -strndup (const char *s, size_t n) -{ - char *result; - size_t len = strlen (s); - - if (n < len) - len = n; - - result = (char *) malloc (len + 1); - if (!result) - return 0; - - result[len] = '\0'; - return (char *) memcpy (result, s, len); -} |