dwarf.c: If the system header files do not declare strnlen, provide our own version.

* dwarf.c: If the system header files do not declare strnlen,
	provide our own version.

From-SVN: r192082
This commit is contained in:
Ian Lance Taylor 2012-10-04 15:16:09 +00:00 committed by Ian Lance Taylor
parent 678771ad9c
commit 244e2d9cd3
2 changed files with 21 additions and 2 deletions

View File

@ -1,3 +1,8 @@
2012-10-04 Ian Lance Taylor <iant@google.com>
* dwarf.c: If the system header files do not declare strnlen,
provide our own version.
2012-10-03 Ian Lance Taylor <iant@google.com>
* dwarf.c (read_uleb128): Fix overflow test.

View File

@ -44,8 +44,22 @@ POSSIBILITY OF SUCH DAMAGE. */
#include "internal.h"
#if !defined(HAVE_DECL_STRNLEN) || !HAVE_DECL_STRNLEN
/* The function is defined in libiberty if needed. */
extern size_t strnlen (const char *, size_t);
/* If strnlen is not declared, provide our own version. */
static size_t
xstrnlen (const char *s, size_t maxlen)
{
size_t i;
for (i = 0; i < maxlen; ++i)
if (s[i] == '\0')
break;
return i;
}
#define strnlen xstrnlen
#endif
/* A buffer to read DWARF info. */