From 289784a798306b02b68b9d82c772225848a63515 Mon Sep 17 00:00:00 2001 From: Luca Boccassi Date: Wed, 7 Apr 2021 10:47:14 +0100 Subject: [PATCH] coredump: use path_equal_filename helper --- src/coredump/coredump.c | 12 +----------- src/coredump/coredumpctl.c | 16 +--------------- 2 files changed, 2 insertions(+), 26 deletions(-) diff --git a/src/coredump/coredump.c b/src/coredump/coredump.c index d5b079a53b..e55fbaa908 100644 --- a/src/coredump/coredump.c +++ b/src/coredump/coredump.c @@ -796,20 +796,10 @@ log: } JSON_VARIANT_OBJECT_FOREACH(module_name, module_json, json_metadata) { - _cleanup_free_ char *module_basename = NULL, *exe_basename = NULL; JsonVariant *package_name, *package_version; - /* The module name, most likely parsed from the ELF core file, - * sometimes contains the full path and sometimes does not. */ - r = path_extract_filename(module_name, &module_basename); - if (r < 0) - return log_error_errno(r, "Failed to parse module basename: %m"); - r = path_extract_filename(context->meta[META_EXE], &exe_basename); - if (r < 0) - return log_error_errno(r, "Failed to parse executable basename: %m"); - /* We only add structured fields for the 'main' ELF module */ - if (!streq(module_basename, exe_basename)) + if (!path_equal_filename(module_name, context->meta[META_EXE])) continue; package_name = json_variant_by_key(module_json, "package"); diff --git a/src/coredump/coredumpctl.c b/src/coredump/coredumpctl.c index dffb92981b..02bad966c1 100644 --- a/src/coredump/coredumpctl.c +++ b/src/coredump/coredumpctl.c @@ -736,24 +736,10 @@ static int print_info(FILE *file, sd_journal *j, bool need_space) { JsonVariant *module_json; JSON_VARIANT_OBJECT_FOREACH(module_name, module_json, v) { - _cleanup_free_ char *module_basename = NULL, *exe_basename = NULL; JsonVariant *build_id; - /* The module name, most likely parsed from the ELF core file, - * sometimes contains the full path and sometimes does not. */ - r = path_extract_filename(module_name, &module_basename); - if (r < 0) { - log_warning_errno(r, "Failed to parse module basename: %m"); - break; - } - r = path_extract_filename(exe, &exe_basename); - if (r < 0) { - log_warning_errno(r, "Failed to parse executable basename: %m"); - break; - } - /* We only print the build-id for the 'main' ELF module */ - if (!streq(module_basename, exe_basename)) + if (!path_equal_filename(module_name, exe)) continue; build_id = json_variant_by_key(module_json, "buildId");