1ea906c41SOllivier Robert /* 2ea906c41SOllivier Robert * Platforms without strdup ?!?!?! 3ea906c41SOllivier Robert */ 4ea906c41SOllivier Robert 5ea906c41SOllivier Robert static char * 6*2b15cb3dSCy Schubert strdup( char const *s ); 7*2b15cb3dSCy Schubert 8*2b15cb3dSCy Schubert static char * strdup(char const * s)9ea906c41SOllivier Robertstrdup( char const *s ) 10ea906c41SOllivier Robert { 11ea906c41SOllivier Robert char *cp; 12ea906c41SOllivier Robert 13ea906c41SOllivier Robert if (s == NULL) 14ea906c41SOllivier Robert return NULL; 15ea906c41SOllivier Robert 16ea906c41SOllivier Robert cp = (char *) AGALOC((unsigned) (strlen(s)+1), "strdup"); 17ea906c41SOllivier Robert 18ea906c41SOllivier Robert if (cp != NULL) 19ea906c41SOllivier Robert (void) strcpy(cp, s); 20ea906c41SOllivier Robert 21ea906c41SOllivier Robert return cp; 22ea906c41SOllivier Robert } 23