X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=cli%2Fbabeltrace-log.c;h=040af75947f6a63dcf3f7a078b46dc365e09c264;hb=40b9ea676c5490358df4955d4938999d1814d9b2;hp=a2d4884c825bc64919456285ef621173b23ce668;hpb=8f76831a6491cf9d2ce3827563a2777d608019b1;p=babeltrace.git diff --git a/cli/babeltrace-log.c b/cli/babeltrace-log.c index a2d4884c..040af759 100644 --- a/cli/babeltrace-log.c +++ b/cli/babeltrace-log.c @@ -30,7 +30,7 @@ #include #include #include -#include +#include #include #include #include @@ -388,8 +388,8 @@ int main(int argc, char **argv) { int fd, metadata_fd, ret; DIR *dir; - int dir_fd; FILE *metadata_fp; + char *file_path; ret = parse_args(argc, argv); if (ret) { @@ -414,23 +414,30 @@ int main(int argc, char **argv) perror("opendir"); goto error_rmdir; } - dir_fd = bt_dirfd(dir); - if (dir_fd < 0) { - perror("dirfd"); + + file_path = g_build_filename(s_outputname, "datastream", NULL); + if (file_path == NULL) { + perror("g_build_filename"); goto error_closedir; } - - fd = openat(dir_fd, "datastream", O_RDWR|O_CREAT, + fd = open(file_path, O_RDWR|O_CREAT, S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP); + g_free(file_path); if (fd < 0) { - perror("openat"); - goto error_closedirfd; + perror("open"); + goto error_closedir; } - metadata_fd = openat(dir_fd, "metadata", O_RDWR|O_CREAT, + file_path = g_build_filename(s_outputname, "metadata", NULL); + if (file_path == NULL) { + perror("g_build_filename"); + goto error_closedatastream; + } + metadata_fd = open(file_path, O_RDWR|O_CREAT, S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP); + g_free(file_path); if (metadata_fd < 0) { - perror("openat"); + perror("open"); goto error_closedatastream; } metadata_fp = fdopen(metadata_fd, "w"); @@ -457,10 +464,6 @@ error_closedatastream: ret = close(fd); if (ret) perror("close"); -error_closedirfd: - ret = close(dir_fd); - if (ret) - perror("close"); error_closedir: ret = closedir(dir); if (ret)