X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng-crash%2Flttng-crash.c;h=653e4d0a6667e88fcc4dc74a49e1885897099874;hb=71a559f8ebee6ba681dfba864d6dace2efcf0440;hp=5d8e620f7a6474b4345ae30992218ffc1fbb0952;hpb=d07f3d990e51e93befc55d0cfbd228227b1875b1;p=lttng-tools.git diff --git a/src/bin/lttng-crash/lttng-crash.c b/src/bin/lttng-crash/lttng-crash.c index 5d8e620f7..653e4d0a6 100644 --- a/src/bin/lttng-crash/lttng-crash.c +++ b/src/bin/lttng-crash/lttng-crash.c @@ -16,7 +16,6 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ -#define _GNU_SOURCE #include #include #include @@ -29,7 +28,6 @@ #include #include #include -#include #include #include #include @@ -184,8 +182,8 @@ struct lttng_crash_layout { /* Variables */ static char *progname, - *opt_viewer_path = DEFAULT_VIEWER, - *opt_output_path; + *opt_viewer_path = NULL, + *opt_output_path = NULL; static char *input_path; @@ -292,9 +290,11 @@ static int parse_args(int argc, char **argv) } break; case 'e': + free(opt_viewer_path); opt_viewer_path = strdup(optarg); break; case 'x': + free(opt_output_path); opt_output_path = strdup(optarg); break; case OPT_DUMP_OPTIONS: @@ -307,6 +307,10 @@ static int parse_args(int argc, char **argv) } } + if (!opt_viewer_path) { + opt_viewer_path = DEFAULT_VIEWER; + } + /* No leftovers, or more than one input path, print usage and quit */ if ((argc - optind) == 0 || (argc - optind) > 1) { usage(stderr); @@ -662,7 +666,7 @@ int copy_crash_subbuf(const struct lttng_crash_layout *layout, return -EINVAL; } - DBG("Copy crash subbuffer at offset %lu", offset); + DBG("Copy crash subbuffer at offset %" PRIu64, offset); sbidx = subbuf_index(offset, buf_size, subbuf_size); /* @@ -1028,6 +1032,7 @@ int extract_trace_recursive(const char *output_path, break; } case DT_REG: + case DT_LNK: if (!strcmp(entry->d_name, "metadata")) { ret = extract_one_trace(output_path, input_path);