18e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels#include <ogg/os_types.h>
28e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels#include <sys/types.h>
38e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels#include <string.h>
48e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels#include <stdlib.h>
58e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels
68e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckelschar *strdup(const char *inStr)
78e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels{
88e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels        char *outStr = NULL;
98e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels
108e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels        if (inStr == NULL) {
118e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels                return NULL;
128e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels        }
138e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels
148e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels        outStr = _ogg_malloc(strlen(inStr) + 1);
158e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels
168e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels        if (outStr != NULL) {
178e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels                strcpy(outStr, inStr);
188e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels        }
198e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels
208e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels        return outStr;
218e01cdce135d5d816f92d7bb83f9a930aa1b45aeLucas Eckels}
22