X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fcommon%2Fcompat%2Fdirectory-handle.c;h=aea4be5fe27ffc54e3c9c873fa36209317cb2ba9;hp=f0139be29bced2a8f566d64dc0b77b49c93a3cca;hb=dbc179cb731580b829facb1b901238c507a6f593;hpb=dd95933f8371a8c81ffc1dc5b306f2263f1ff808 diff --git a/src/common/compat/directory-handle.c b/src/common/compat/directory-handle.c index f0139be29..aea4be5fe 100644 --- a/src/common/compat/directory-handle.c +++ b/src/common/compat/directory-handle.c @@ -164,6 +164,8 @@ struct lttng_directory_handle *lttng_directory_handle_create_from_dirfd( if (ret) { PERROR("Failed to fstat directory file descriptor %i", dirfd); lttng_directory_handle_release(&handle->ref); + handle = NULL; + goto end; } } else { handle->directory_inode = RESERVED_AT_FDCWD_INO; @@ -353,7 +355,12 @@ static int lttng_directory_handle_rmdir( const struct lttng_directory_handle *handle, const char *name) { - return unlinkat(handle->dirfd, name, AT_REMOVEDIR); + int ret = unlinkat(handle->dirfd, name, AT_REMOVEDIR); + if (ret) { + PERROR("Failed to remove directory `%s`", name); + } + + return ret; } static @@ -591,7 +598,7 @@ LTTNG_HIDDEN bool lttng_directory_handle_equals(const struct lttng_directory_handle *lhs, const struct lttng_directory_handle *rhs) { - return strcmp(lhs->path, rhs->path) == 0; + return strcmp(lhs->base_path, rhs->base_path) == 0; } static