Fix: sink.text.pretty: support unknown event class name
authorPhilippe Proulx <eeppeliteloop@gmail.com>
Thu, 4 Jul 2019 07:04:20 +0000 (03:04 -0400)
committerPhilippe Proulx <eeppeliteloop@gmail.com>
Thu, 4 Jul 2019 21:50:15 +0000 (17:50 -0400)
An event class's name property is optional. Add support in
`sink.text.pretty` for a nonexistent event class name. The component
prints `<unknown>`, the same way it prints this for an enumeration field
value without a corresponding mapping.

Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Change-Id: I26740a254956534d0a47b3760456314466afc4d7
Reviewed-on: https://review.lttng.org/c/babeltrace/+/1623
Tested-by: jenkins <jenkins@lttng.org>
src/plugins/text/pretty/print.c

index 7ba5b3b46f5b8993a2a558b8917042165d675e53..ed4f3a38488c132a0e66ab120ce4a06c2918fe35 100644 (file)
@@ -301,6 +301,7 @@ int print_event_header(struct pretty_component *pretty,
        const bt_stream *stream = NULL;
        const bt_trace *trace = NULL;
        const bt_event *event = bt_message_event_borrow_event_const(event_msg);
+       const char *ev_name;
        int dom_print = 0;
        bt_property_availability prop_avail;
 
@@ -486,10 +487,19 @@ int print_event_header(struct pretty_component *pretty,
        if (print_names) {
                print_name_equal(pretty, "name");
        }
+       ev_name = bt_event_class_get_name(event_class);
        if (pretty->use_colors) {
-               g_string_append(pretty->string, COLOR_EVENT_NAME);
+               if (ev_name) {
+                       g_string_append(pretty->string, COLOR_EVENT_NAME);
+               } else {
+                       g_string_append(pretty->string, COLOR_UNKNOWN);
+               }
+       }
+       if (ev_name) {
+               g_string_append(pretty->string, ev_name);
+       } else {
+               g_string_append(pretty->string, "<unknown>");
        }
-       g_string_append(pretty->string, bt_event_class_get_name(event_class));
        if (pretty->use_colors) {
                g_string_append(pretty->string, COLOR_RST);
        }
This page took 0.02599 seconds and 4 git commands to generate.