diff options
author | Johannes Schindelin <johannes.schindelin@gmx.de> | 2022-03-17 10:57:43 +0100 |
---|---|---|
committer | Johannes Schindelin <johannes.schindelin@gmx.de> | 2022-03-24 00:31:32 +0100 |
commit | 303b876f76c2caccc9a289c4f14a2b2d3850684e (patch) | |
tree | 1a7e38217fac02c6f9251b78e1cb4d74101f76c7 /git-compat-util.h | |
parent | GIT-VERSION-GEN: bump to v2.33.1 (diff) | |
parent | Git 2.32.1 (diff) | |
download | git-303b876f76c2caccc9a289c4f14a2b2d3850684e.tar.xz git-303b876f76c2caccc9a289c4f14a2b2d3850684e.zip |
Sync with 2.32.1
* maint-2.32:
Git 2.32.1
Git 2.31.2
Git 2.30.3
setup_git_directory(): add an owner check for the top-level directory
Add a function to determine whether a path is owned by the current user
Diffstat (limited to 'git-compat-util.h')
-rw-r--r-- | git-compat-util.h | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/git-compat-util.h b/git-compat-util.h index b46605300a..dc52aeaf55 100644 --- a/git-compat-util.h +++ b/git-compat-util.h @@ -127,7 +127,9 @@ /* Approximation of the length of the decimal representation of this type. */ #define decimal_length(x) ((int)(sizeof(x) * 2.56 + 0.5) + 1) -#if defined(__sun__) +#ifdef __MINGW64__ +#define _POSIX_C_SOURCE 1 +#elif defined(__sun__) /* * On Solaris, when _XOPEN_EXTENDED is set, its header file * forces the programs to be XPG4v2, defeating any _XOPEN_SOURCE @@ -395,6 +397,18 @@ static inline int git_offset_1st_component(const char *path) #define is_valid_path(path) 1 #endif +#ifndef is_path_owned_by_current_user +static inline int is_path_owned_by_current_uid(const char *path) +{ + struct stat st; + if (lstat(path, &st)) + return 0; + return st.st_uid == geteuid(); +} + +#define is_path_owned_by_current_user is_path_owned_by_current_uid +#endif + #ifndef find_last_dir_sep static inline char *git_find_last_dir_sep(const char *path) { |