upload android base code part8
This commit is contained in:
parent
841ae54672
commit
5425409085
57075 changed files with 9846578 additions and 0 deletions
|
@ -0,0 +1,62 @@
|
|||
/* Return the basename of a pathname.
|
||||
This file is in the public domain. */
|
||||
|
||||
/*
|
||||
|
||||
@deftypefn Supplemental char* basename (const char *@var{name})
|
||||
|
||||
Returns a pointer to the last component of pathname @var{name}.
|
||||
Behavior is undefined if the pathname ends in a directory separator.
|
||||
|
||||
@end deftypefn
|
||||
|
||||
*/
|
||||
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
#include "ansidecl.h"
|
||||
#include "libiberty.h"
|
||||
#include "safe-ctype.h"
|
||||
|
||||
#ifndef DIR_SEPARATOR
|
||||
#define DIR_SEPARATOR '/'
|
||||
#endif
|
||||
|
||||
#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \
|
||||
defined (__OS2__)
|
||||
#define HAVE_DOS_BASED_FILE_SYSTEM
|
||||
#ifndef DIR_SEPARATOR_2
|
||||
#define DIR_SEPARATOR_2 '\\'
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* Define IS_DIR_SEPARATOR. */
|
||||
#ifndef DIR_SEPARATOR_2
|
||||
# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR)
|
||||
#else /* DIR_SEPARATOR_2 */
|
||||
# define IS_DIR_SEPARATOR(ch) \
|
||||
(((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2))
|
||||
#endif /* DIR_SEPARATOR_2 */
|
||||
|
||||
char *
|
||||
basename (const char *name)
|
||||
{
|
||||
const char *base;
|
||||
|
||||
#if defined (HAVE_DOS_BASED_FILE_SYSTEM)
|
||||
/* Skip over the disk name in MSDOS pathnames. */
|
||||
if (ISALPHA (name[0]) && name[1] == ':')
|
||||
name += 2;
|
||||
#endif
|
||||
|
||||
for (base = name; *name; name++)
|
||||
{
|
||||
if (IS_DIR_SEPARATOR (*name))
|
||||
{
|
||||
base = name + 1;
|
||||
}
|
||||
}
|
||||
return (char *) base;
|
||||
}
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue