[DTrace-devel] [PATCH 4/5] trace: handle the empty string in a sensible way

Eugene Loh eugene.loh at oracle.com
Thu Aug 14 16:18:42 UTC 2025


I agree, but does this change any test results?  If not, should there be 
a test added?

On 8/13/25 11:57, Kris Van Hees via DTrace-devel wrote:
> The trace("") action would dump a series of 0x00 bytes (strsize of
> them) rather than printing an empty string.  While that is the legacy
> behaviour, it does not really make any sense to do so.  The trace
> action is described as printing data as a string if possible, and a
> block of 0-bytes can certainly be printed as an empty string.
>
> Signed-off-by: Kris Van Hees <kris.van.hees at oracle.com>
> ---
>   libdtrace/dt_consume.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/libdtrace/dt_consume.c b/libdtrace/dt_consume.c
> index edfe5bbae..2dce69d6d 100644
> --- a/libdtrace/dt_consume.c
> +++ b/libdtrace/dt_consume.c
> @@ -991,7 +991,7 @@ dt_print_bytes(dtrace_hdl_t *dtp, FILE *fp, caddr_t addr,
>   		    c[i] == '\b' || c[i] == '\a')
>   			continue;
>   
> -		if (c[i] == '\0' && i > 0) {
> +		if (c[i] == '\0') {
>   			/*
>   			 * This looks like it might be a string.  Before we
>   			 * assume that it is indeed a string, check the



More information about the DTrace-devel mailing list