| Index: src/platform-freebsd.cc
|
| ===================================================================
|
| --- src/platform-freebsd.cc (revision 1141)
|
| +++ src/platform-freebsd.cc (working copy)
|
| @@ -195,7 +195,19 @@
|
|
|
|
|
| char* OS::StrNDup(const char* str, size_t n) {
|
| - return strndup(str, n);
|
| + // Stupid implementation of strndup since freebsd isn't born with
|
| + // one.
|
| + size_t len = strlen(str);
|
| + if (len <= n) {
|
| + return StrDup(str);
|
| + }
|
| + char* result = new char[n+1];
|
| + size_t i;
|
| + for (i = 0; i <= n; i++) {
|
| + result[i] = str[i];
|
| + }
|
| + result[i] = '\0';
|
| + return result;
|
| }
|
|
|
|
|
|
|