diff options
Diffstat (limited to 'sldns/sbuffer.c')
-rw-r--r-- | sldns/sbuffer.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sldns/sbuffer.c b/sldns/sbuffer.c index a04b9b6556331..4ac83977eecba 100644 --- a/sldns/sbuffer.c +++ b/sldns/sbuffer.c @@ -50,6 +50,8 @@ sldns_buffer_new_frm_data(sldns_buffer *buffer, void *data, size_t size) buffer->_limit = buffer->_capacity = size; buffer->_fixed = 0; buffer->_vfixed = 0; + if (!buffer->_fixed && buffer->_data) + free(buffer->_data); buffer->_data = malloc(size); if(!buffer->_data) { buffer->_status_err = 1; |