(emem_trunc): if offset is NULL, free all memory
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@25281 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -110,7 +110,12 @@ emem_trunc(krb5_storage *sp, off_t offset)
|
||||
* If offset is larget then current size, or current size is
|
||||
* shrunk more then half of the current size, adjust buffer.
|
||||
*/
|
||||
if (offset > s->size || (s->size / 2) > offset) {
|
||||
if (offset == 0) {
|
||||
free(s->base);
|
||||
s->size = 0;
|
||||
s->base = NULL;
|
||||
s->ptr = NULL;
|
||||
} else if (offset > s->size || (s->size / 2) > offset) {
|
||||
void *base;
|
||||
size_t off;
|
||||
off = s->ptr - s->base;
|
||||
|
Reference in New Issue
Block a user