diff options
Diffstat (limited to 'librpc/ndr/ndr.c')
-rw-r--r-- | librpc/ndr/ndr.c | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/librpc/ndr/ndr.c b/librpc/ndr/ndr.c index 1600d51c1c..3f553a7cbc 100644 --- a/librpc/ndr/ndr.c +++ b/librpc/ndr/ndr.c @@ -176,6 +176,12 @@ _PUBLIC_ void ndr_print_debug_helper(struct ndr_print *ndr, const char *format, return; } + if (ndr->no_newline) { + DEBUGADD(1,("%s", s)); + free(s); + return; + } + for (i=0;i<ndr->depth;i++) { DEBUGADD(1,(" ")); } @@ -189,17 +195,21 @@ _PUBLIC_ void ndr_print_string_helper(struct ndr_print *ndr, const char *format, va_list ap; int i; - for (i=0;i<ndr->depth;i++) { - ndr->private_data = talloc_asprintf_append_buffer( - (char *)ndr->private_data, " "); + if (!ndr->no_newline) { + for (i=0;i<ndr->depth;i++) { + ndr->private_data = talloc_asprintf_append_buffer( + (char *)ndr->private_data, " "); + } } va_start(ap, format); ndr->private_data = talloc_vasprintf_append_buffer((char *)ndr->private_data, format, ap); va_end(ap); - ndr->private_data = talloc_asprintf_append_buffer((char *)ndr->private_data, - "\n"); + if (!ndr->no_newline) { + ndr->private_data = talloc_asprintf_append_buffer((char *)ndr->private_data, + "\n"); + } } /* |