path-util: fix an issue when the path argument of prefix_roota() is not absolute
When the first argument is '/' and the second argument is not absolute, the return value was not prefixed with '/'. This fixes the issue.
This commit is contained in:
parent
c455677449
commit
95bbf19e2f
|
@ -117,7 +117,7 @@ int mkfs_exists(const char *fstype);
|
|||
_slash = strrchr((prefix), '/'))
|
||||
|
||||
/* Similar to path_join(), but only works for two components, and only the first one may be NULL and returns
|
||||
* an alloca() buffer, or possibly a const pointer into the path parameter */
|
||||
* an alloca() buffer, or possibly a const pointer into the path parameter. */
|
||||
#define prefix_roota(root, path) \
|
||||
({ \
|
||||
const char* _path = (path), *_root = (root), *_ret; \
|
||||
|
@ -125,7 +125,7 @@ int mkfs_exists(const char *fstype);
|
|||
size_t _l; \
|
||||
while (_path[0] == '/' && _path[1] == '/') \
|
||||
_path ++; \
|
||||
if (empty_or_root(_root)) \
|
||||
if (isempty(_root)) \
|
||||
_ret = _path; \
|
||||
else { \
|
||||
_l = strlen(_root) + 1 + strlen(_path) + 1; \
|
||||
|
|
Loading…
Reference in a new issue