Move offset_1st_component() to path.c

The implementation is also lightly modified to use is_dir_sep()
instead of hardcoding '/'.

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Nguyễn Thái Ngọc Duy 2010-02-16 12:22:08 +07:00 committed by Junio C Hamano
parent d06f15d9c0
commit 4bb43de259
3 changed files with 8 additions and 7 deletions

View File

@ -664,6 +664,7 @@ int normalize_path_copy(char *dst, const char *src);
int longest_ancestor_length(const char *path, const char *prefix_list); int longest_ancestor_length(const char *path, const char *prefix_list);
char *strip_path_suffix(const char *path, const char *suffix); char *strip_path_suffix(const char *path, const char *suffix);
int daemon_avoid_alias(const char *path); int daemon_avoid_alias(const char *path);
int offset_1st_component(const char *path);
/* Read and unpack a sha1 file into memory, write memory to a sha1 file */ /* Read and unpack a sha1 file into memory, write memory to a sha1 file */
extern int sha1_object_info(const unsigned char *, unsigned long *); extern int sha1_object_info(const unsigned char *, unsigned long *);

7
path.c
View File

@ -649,3 +649,10 @@ int daemon_avoid_alias(const char *p)
} }
} }
} }
int offset_1st_component(const char *path)
{
if (has_dos_drive_prefix(path))
return 2 + is_dir_sep(path[2]);
return is_dir_sep(path[0]);
}

View File

@ -83,13 +83,6 @@ int get_sha1_hex(const char *hex, unsigned char *sha1)
return 0; return 0;
} }
static inline int offset_1st_component(const char *path)
{
if (has_dos_drive_prefix(path))
return 2 + (path[2] == '/');
return *path == '/';
}
int safe_create_leading_directories(char *path) int safe_create_leading_directories(char *path)
{ {
char *pos = path + offset_1st_component(path); char *pos = path + offset_1st_component(path);