Commit bc648491 by Romain Geissler

Fileops: Added gitfo_isfile.

Conflicts:

	src/fileops.c
parent 26a98ec8
...@@ -131,7 +131,26 @@ int gitfo_isdir(const char *path) ...@@ -131,7 +131,26 @@ int gitfo_isdir(const char *path)
return git__throw(GIT_ENOTFOUND, "%s does not exist", path); return git__throw(GIT_ENOTFOUND, "%s does not exist", path);
if (!S_ISDIR(st.st_mode)) if (!S_ISDIR(st.st_mode))
return git__throw(GIT_ENOTFOUND, "%s is a file", path); return git__throw(GIT_ENOTFOUND, "%s is not a directory", path);
return GIT_SUCCESS;
}
int gitfo_isfile(const char *path)
{
struct stat st;
int stat_error;
if (!path)
return git__throw(GIT_ENOTFOUND, "No path given to gitfo_isfile");
stat_error = gitfo_stat(path, &st);
if (stat_error < GIT_SUCCESS)
return git__throw(GIT_ENOTFOUND, "%s does not exist", path);
if (!S_ISREG(st.st_mode))
return git__throw(GIT_ENOTFOUND, "%s is not a file", path);
return GIT_SUCCESS; return GIT_SUCCESS;
} }
......
...@@ -67,6 +67,7 @@ extern int gitfo_creat(const char *path, int mode); ...@@ -67,6 +67,7 @@ extern int gitfo_creat(const char *path, int mode);
extern int gitfo_creat_force(const char *path, int mode); extern int gitfo_creat_force(const char *path, int mode);
extern int gitfo_mktemp(char *path_out, const char *filename); extern int gitfo_mktemp(char *path_out, const char *filename);
extern int gitfo_isdir(const char *path); extern int gitfo_isdir(const char *path);
extern int gitfo_isfile(const char *path);
extern int gitfo_mkdir_recurs(const char *path, int mode); extern int gitfo_mkdir_recurs(const char *path, int mode);
extern int gitfo_mkdir_2file(const char *path); extern int gitfo_mkdir_2file(const char *path);
#define gitfo_close(fd) close(fd) #define gitfo_close(fd) close(fd)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment