This patch makes a `sink.text.details` not write the value of a trace
environment entry or of a value object when it's an empty string.
This is mostly because I don't like to keep plain text files with
significant trailing whitespaces in this repository, and
`data/plugins/src.ctf.lttng-live/cli-multi-domains.expect` had some,
for example:
trace_creation_datetime:️▒
trace_name:▒
where `▒` is a space.
Of course we'll have the same issue if a user string contains only
whitespaces instead of being empty, but since it's unlikely that we'll
do this in our own tests, this patch is good enough for me.
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
Change-Id: I6be83e2721bc6ce98e1459a7df42e32ccf6b661d
Reviewed-on: https://review.lttng.org/c/babeltrace/+/12249
CI-Build: Simon Marchi <simon.marchi@efficios.com>
Tested-by: jenkins <jenkins@lttng.org>
write_float_prop_value(ctx, bt_value_real_get(value));
break;
case BT_VALUE_TYPE_STRING:
write_float_prop_value(ctx, bt_value_real_get(value));
break;
case BT_VALUE_TYPE_STRING:
- write_sp(ctx);
- write_str_prop_value(ctx, bt_value_string_get(value));
+ if (strlen(bt_value_string_get(value)) > 0) {
+ write_sp(ctx);
+ write_str_prop_value(ctx, bt_value_string_get(value));
+ }
+
break;
case BT_VALUE_TYPE_ARRAY:
{
break;
case BT_VALUE_TYPE_ARRAY:
{
BT_ASSERT_DBG(value);
write_compound_member_name(ctx, name);
BT_ASSERT_DBG(value);
write_compound_member_name(ctx, name);
if (bt_value_get_type(value) ==
BT_VALUE_TYPE_SIGNED_INTEGER) {
if (bt_value_get_type(value) ==
BT_VALUE_TYPE_SIGNED_INTEGER) {
write_int_prop_value(ctx,
bt_value_integer_signed_get(value));
} else if (bt_value_get_type(value) ==
BT_VALUE_TYPE_STRING) {
write_int_prop_value(ctx,
bt_value_integer_signed_get(value));
} else if (bt_value_get_type(value) ==
BT_VALUE_TYPE_STRING) {
- write_str_prop_value(ctx,
- bt_value_string_get(value));
+ if (strlen(bt_value_string_get(value)) > 0) {
+ write_sp(ctx);
+ write_str_prop_value(ctx,
+ bt_value_string_get(value));
+ }
} else {
bt_common_abort();
}
} else {
bt_common_abort();
}
kernel_version: #46-Ubuntu SMP Thu Dec 6 14:45:28 UTC 2018
sysname: Linux
trace_buffering_scheme: global
kernel_version: #46-Ubuntu SMP Thu Dec 6 14:45:28 UTC 2018
sysname: Linux
trace_buffering_scheme: global
- trace_creation_datetime:
- trace_name:
+ trace_creation_datetime:
+ trace_name:
tracer_major: 2
tracer_minor: 11
tracer_name: lttng-modules
tracer_major: 2
tracer_minor: 11
tracer_name: lttng-modules
kernel_version: #46-Ubuntu SMP Thu Dec 6 14:45:28 UTC 2018
sysname: Linux
trace_buffering_scheme: global
kernel_version: #46-Ubuntu SMP Thu Dec 6 14:45:28 UTC 2018
sysname: Linux
trace_buffering_scheme: global
- trace_creation_datetime:
- trace_name:
+ trace_creation_datetime:
+ trace_name:
tracer_major: 2
tracer_minor: 11
tracer_name: lttng-modules
tracer_major: 2
tracer_minor: 11
tracer_name: lttng-modules
kernel_version: #46-Ubuntu SMP Thu Dec 6 14:45:28 UTC 2018
sysname: Linux
trace_buffering_scheme: global
kernel_version: #46-Ubuntu SMP Thu Dec 6 14:45:28 UTC 2018
sysname: Linux
trace_buffering_scheme: global
- trace_creation_datetime:
- trace_name:
+ trace_creation_datetime:
+ trace_name:
tracer_major: 2
tracer_minor: 11
tracer_name: lttng-modules
tracer_major: 2
tracer_minor: 11
tracer_name: lttng-modules
kernel_version: #46-Ubuntu SMP Thu Dec 6 14:45:28 UTC 2018
sysname: Linux
trace_buffering_scheme: global
kernel_version: #46-Ubuntu SMP Thu Dec 6 14:45:28 UTC 2018
sysname: Linux
trace_buffering_scheme: global
- trace_creation_datetime:
- trace_name:
+ trace_creation_datetime:
+ trace_name:
tracer_major: 2
tracer_minor: 11
tracer_name: lttng-modules
tracer_major: 2
tracer_minor: 11
tracer_name: lttng-modules