For us to reach the statement ‘if (0 < len1)’, ‘len1’ must be equal to
‘len2’, and they must not both be equal to zero. That cannot be the case
if ‘len1’ is equal to zero, and therefore the ‘else’ branch cannot be
reached.
Signed-off-by: Joseph Sutton <josephsutton@catalyst.net.nz>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
goto cleanup;
}
} else {
+ size_t pull_len;
+
/* make sure its in the right format - be strict */
if ((len1 != len2) || (ptr + len1 < ptr) || (ptr + len1 < len1) || (ptr + len1 > blob->length)) {
ret = false;
goto cleanup;
}
- if (0 < len1) {
- size_t pull_len;
- if (!convert_string_talloc(mem_ctx, CH_UTF16, CH_UNIX,
- blob->data + ptr, len1,
- ps, &pull_len)) {
- ret = false;
- goto cleanup;
- }
- } else {
- *ps = talloc_strdup(mem_ctx, "");
- if (*ps == NULL) {
- ret = false;
- goto cleanup;
- }
+ if (!convert_string_talloc(mem_ctx, CH_UTF16, CH_UNIX,
+ blob->data + ptr, len1,
+ ps, &pull_len)) {
+ ret = false;
+ goto cleanup;
}
}
break;