X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=src%2Fcommon%2Fcompat%2Fdirectory-handle.c;h=a7e0e78689aadff3b1e478e3b466d2991c5f2f1a;hb=a2f8cd58605942314ebf734b3e95c65721e6394a;hp=f0139be29bced2a8f566d64dc0b77b49c93a3cca;hpb=dd95933f8371a8c81ffc1dc5b306f2263f1ff808;p=lttng-tools.git diff --git a/src/common/compat/directory-handle.c b/src/common/compat/directory-handle.c index f0139be29..a7e0e7868 100644 --- a/src/common/compat/directory-handle.c +++ b/src/common/compat/directory-handle.c @@ -1,7 +1,7 @@ /* * Copyright (C) 2019 Jérémie Galarneau * - * SPDX-License-Identifier: GPL-2.0-only + * SPDX-License-Identifier: LGPL-2.1-only * */ @@ -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