diff options
Diffstat (limited to 'source3')
-rw-r--r-- | source3/rpc_parse/parse_misc.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/source3/rpc_parse/parse_misc.c b/source3/rpc_parse/parse_misc.c index b53f9ec98c..bca40a64c8 100644 --- a/source3/rpc_parse/parse_misc.c +++ b/source3/rpc_parse/parse_misc.c @@ -895,7 +895,15 @@ void init_unistr2(UNISTR2 *str, const char *buf, enum unistr2_term_codes flags) if (buf) { /* We always null terminate the copy. */ len = strlen(buf) + 1; + } else { + /* no buffer -- nothing to do */ + str->uni_max_len = 0; + str->offset = 0; + str->uni_str_len = 0; + + return; } + str->buffer = TALLOC_ZERO_ARRAY(get_talloc_ctx(), uint16, len); if (str->buffer == NULL) { |