diff options
Diffstat (limited to 'source3/libsmb/clirap.c')
-rw-r--r-- | source3/libsmb/clirap.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/source3/libsmb/clirap.c b/source3/libsmb/clirap.c index 8c167e1257..61e2fb7f1a 100644 --- a/source3/libsmb/clirap.c +++ b/source3/libsmb/clirap.c @@ -865,7 +865,7 @@ bool cli_qpathinfo_streams(struct cli_state *cli, const char *fname, while ((data_len > ofs) && (data_len - ofs >= 24)) { uint32_t nlen, len; - ssize_t size; + size_t size; void *vstr; struct stream_struct *tmp; uint8_t *tmp_buf; @@ -904,14 +904,14 @@ bool cli_qpathinfo_streams(struct cli_state *cli, const char *fname, tmp_buf[nlen] = 0; tmp_buf[nlen+1] = 0; - size = convert_string_talloc(streams, CH_UTF16, CH_UNIX, - tmp_buf, nlen+2, &vstr, - false); - TALLOC_FREE(tmp_buf); - - if (size == -1) { + if (!convert_string_talloc(streams, CH_UTF16, CH_UNIX, tmp_buf, + nlen+2, &vstr, &size, false)) + { + TALLOC_FREE(tmp_buf); goto fail; } + + TALLOC_FREE(tmp_buf); streams[num_streams].name = (char *)vstr; num_streams++; |