path-util: Add a helper for checking paths

The difference with the already existing path_equal_or_inode_same function is
that the new one does not swallow errors.
This commit is contained in:
Krzesimir Nowak
2024-04-19 08:30:40 +02:00
parent 55c28a88f1
commit 581d8a1470
2 changed files with 14 additions and 1 deletions
+12
View File
@@ -525,6 +525,18 @@ int path_compare_filename(const char *a, const char *b) {
return strcmp(fa, fb);
}
int path_equal_or_inode_same_full(const char *a, const char *b, int flags) {
/* Returns true if paths are of the same entry, false if not, <0 on error. */
if (path_equal(a, b))
return 1;
if (!a || !b)
return 0;
return inode_same(a, b, flags);
}
char* path_extend_internal(char **x, ...) {
size_t sz, old_sz;
char *q, *nx;
+2 -1
View File
@@ -68,8 +68,9 @@ static inline bool path_equal_filename(const char *a, const char *b) {
return path_compare_filename(a, b) == 0;
}
int path_equal_or_inode_same_full(const char *a, const char *b, int flags);
static inline bool path_equal_or_inode_same(const char *a, const char *b, int flags) {
return path_equal(a, b) || inode_same(a, b, flags) > 0;
return path_equal_or_inode_same_full(a, b, flags) > 0;
}
char* path_extend_internal(char **x, ...);