diff options
author | mav <mav@FreeBSD.org> | 2016-03-08 18:53:00 +0000 |
---|---|---|
committer | mav <mav@FreeBSD.org> | 2016-03-08 18:53:00 +0000 |
commit | 97c61b2440bce22f5cd8fbb32df5a0d2559e352f (patch) | |
tree | 959aef1b7201d9976a60204386a34950119f50f7 /cddl/contrib/opensolaris/lib | |
parent | 129937ee6d1df268cf677ace416f2b6c1a8c157a (diff) | |
download | FreeBSD-src-97c61b2440bce22f5cd8fbb32df5a0d2559e352f.zip FreeBSD-src-97c61b2440bce22f5cd8fbb32df5a0d2559e352f.tar.gz |
MFV r296540: 4448 zfs diff misprints unicode characters
Reviewed by: Igor Kozhukhov <ikozhukhov@gmail.com>
Reviewed by: Toomas Soome <tsoome@me.com>
Approved by: Matthew Ahrens <mahrens@delphix.com>
Author: Joshua M. Clulow <jmc@joyent.com>
illumos/illumos-gate@b211eb9181f99c20acbf4c528f94cb44b4ca8c31
Diffstat (limited to 'cddl/contrib/opensolaris/lib')
-rw-r--r-- | cddl/contrib/opensolaris/lib/libzfs/common/libzfs_diff.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_diff.c b/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_diff.c index bb49eba..28b1e2e 100644 --- a/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_diff.c +++ b/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_diff.c @@ -22,6 +22,7 @@ /* * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. * Copyright 2015 Nexenta Systems, Inc. All rights reserved. + * Copyright 2016 Joyent, Inc. */ /* @@ -136,12 +137,13 @@ get_stats_for_obj(differ_info_t *di, const char *dsname, uint64_t obj, static void stream_bytes(FILE *fp, const char *string) { - while (*string) { - if (*string > ' ' && *string != '\\' && *string < '\177') - (void) fprintf(fp, "%c", *string++); - else { - (void) fprintf(fp, "\\%03hho", - (unsigned char)*string++); + char c; + + while ((c = *string++) != '\0') { + if (c > ' ' && c != '\\' && c < '\177') { + (void) fprintf(fp, "%c", c); + } else { + (void) fprintf(fp, "\\%03o", (uint8_t)c); } } } |