From d3cf935b4ec35cb4acedb6c278177bdd4e1776cb Mon Sep 17 00:00:00 2001 From: Florian Forster Date: Wed, 23 Jun 2010 09:20:57 +0200 Subject: [PATCH] "show graph" action: Create exact field searches in the breadcrump. --- src/action_show_graph.c | 23 +++++++++++++++-------- 1 file changed, 15 insertions(+), 8 deletions(-) diff --git a/src/action_show_graph.c b/src/action_show_graph.c index 2f124de..7b3c93a 100644 --- a/src/action_show_graph.c +++ b/src/action_show_graph.c @@ -28,7 +28,8 @@ struct show_graph_data_s }; typedef struct show_graph_data_s show_graph_data_t; -static void show_breadcrump_field (const char *str) /* {{{ */ +static void show_breadcrump_field (const char *str, /* {{{ */ + const char *field_name) { if ((str == NULL) || (str[0] == 0)) printf ("none"); @@ -39,8 +40,14 @@ static void show_breadcrump_field (const char *str) /* {{{ */ else { char *str_html = html_escape (str); - printf ("%s", - script_name (), str_html, str_html); + + if (field_name != NULL) + printf ("%s", + script_name (), field_name, str_html, str_html); + else + printf ("%s", + script_name (), str_html, str_html); + free (str_html); } } /* }}} void show_breadcrump_field */ @@ -62,15 +69,15 @@ static int show_breadcrump (show_graph_data_t *data) /* {{{ */ } printf ("
%s: "", prefix); - show_breadcrump_field (ident_get_host (ident)); + show_breadcrump_field (ident_get_host (ident), "host"); printf (" / "); - show_breadcrump_field (ident_get_plugin (ident)); + show_breadcrump_field (ident_get_plugin (ident), "plugin"); printf (" – "); - show_breadcrump_field (ident_get_plugin_instance (ident)); + show_breadcrump_field (ident_get_plugin_instance (ident), NULL); printf (" / "); - show_breadcrump_field (ident_get_type (ident)); + show_breadcrump_field (ident_get_type (ident), "type"); printf (" – "); - show_breadcrump_field (ident_get_type_instance (ident)); + show_breadcrump_field (ident_get_type_instance (ident), NULL); printf (""
\n"); return (0); -- 2.30.2