source: branches/libc-0.6/src/binutils/libiberty/xstrdup.c

Last change on this file was 610, checked in by bird, 22 years ago

This commit was generated by cvs2svn to compensate for changes in r609,
which included commits to RCS files with non-trunk default branches.

  • Property cvs2svn:cvs-rev set to 1.1.1.2
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 657 bytes
Line 
1/* xstrdup.c -- Duplicate a string in memory, using xmalloc.
2 This trivial function is in the public domain.
3 Ian Lance Taylor, Cygnus Support, December 1995. */
4
5/*
6
7@deftypefn Replacement char* xstrdup (const char *@var{s})
8
9Duplicates a character string without fail, using @code{xmalloc} to
10obtain memory.
11
12@end deftypefn
13
14*/
15
16#include <sys/types.h>
17#ifdef HAVE_CONFIG_H
18#include "config.h"
19#endif
20#ifdef HAVE_STRING_H
21#include <string.h>
22#endif
23#include "ansidecl.h"
24#include "libiberty.h"
25
26char *
27xstrdup (s)
28 const char *s;
29{
30 register size_t len = strlen (s) + 1;
31 register char *ret = xmalloc (len);
32 memcpy (ret, s, len);
33 return ret;
34}
Note: See TracBrowser for help on using the repository browser.