BUG: https://bugzilla.samba.org/show_bug.cgi?id=13356
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
offset = ctdb_ltdb_header_len(&h->header);
data->dsize = h->data.dsize - offset;
- data->dptr = talloc_memdup(mem_ctx, h->data.dptr + offset,
- data->dsize);
- if (data->dptr == NULL) {
- TALLOC_FREE(state->h);
- if (perr != NULL) {
- *perr = ENOMEM;
+ if (data->dsize == 0) {
+ data->dptr = NULL;
+ } else {
+ data->dptr = talloc_memdup(mem_ctx,
+ h->data.dptr + offset,
+ data->dsize);
+ if (data->dptr == NULL) {
+ TALLOC_FREE(state->h);
+ if (perr != NULL) {
+ *perr = ENOMEM;
+ }
+ return NULL;
}
- return NULL;
}
}