diff options
| author | Li-Wen Hsu <lwhsu@FreeBSD.org> | 2026-06-27 02:26:05 +0000 |
|---|---|---|
| committer | Li-Wen Hsu <lwhsu@FreeBSD.org> | 2026-06-27 02:26:05 +0000 |
| commit | 8e61d8707f8a10acc143210089fea2502a3f2922 (patch) | |
| tree | f3f8de97e3731b9b6c1813ef86bd7ffb367acb31 | |
| parent | 4d3cbeb7b407e127a5364f86039745068fbfc61f (diff) | |
libdtrace: Fix dt_print_sym() not printing symbols in non-oformat mode
dt_print_sym() fills the symbol string via snprintf() in non-oformat
mode but the guarding `dtp->dt_oformat != 0 &&` for the dt_printf()
call causes the symbol is computed but never emitted.
This fixes tests:
- common.profile-n.t_dtrace_contrib.tst_sym_ksh
- common.profile-n.t_dtrace_contrib.tst_func_ksh
Reviewed by: markj
Fixes: 93f27766a7e1 ("dtrace: Add the 'oformat' libdtrace option")
MFC after: 3 days
Event: Halifax Hackathon 202606
Location: Room 208, Computer Science Building, Dalhousie University
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D57895
| -rw-r--r-- | cddl/contrib/opensolaris/lib/libdtrace/common/dt_consume.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_consume.c b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_consume.c index b311b5425587..a8a49b22ed7b 100644 --- a/cddl/contrib/opensolaris/lib/libdtrace/common/dt_consume.c +++ b/cddl/contrib/opensolaris/lib/libdtrace/common/dt_consume.c @@ -2143,7 +2143,7 @@ dt_print_sym(dtrace_hdl_t *dtp, FILE *fp, const char *format, caddr_t addr) } } - if (dtp->dt_oformat != 0 && dt_printf(dtp, fp, format, c) < 0) + if (!dtp->dt_oformat && dt_printf(dtp, fp, format, c) < 0) return (-1); return (0); |
