summaryrefslogtreecommitdiff
path: root/source4/heimdal/lib/krb5/store_emem.c
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2009-07-16 09:53:14 +1000
committerAndrew Bartlett <abartlet@samba.org>2009-07-16 11:31:36 +1000
commite25325539a86912ce620875ef07beff5bcde6060 (patch)
tree26bcb5125a5e8a698f35995f0dde892a8c0846d6 /source4/heimdal/lib/krb5/store_emem.c
parent05bec77e00cc0f974d8521f781dce9dcff897f76 (diff)
downloadsamba-e25325539a86912ce620875ef07beff5bcde6060.tar.gz
samba-e25325539a86912ce620875ef07beff5bcde6060.tar.bz2
samba-e25325539a86912ce620875ef07beff5bcde6060.zip
s4:heimdal: import lorikeet-heimdal-200907152325 (commit 2bef9cd5378c01e9c2a74d6221761883bd11a5c5)
Diffstat (limited to 'source4/heimdal/lib/krb5/store_emem.c')
-rw-r--r--source4/heimdal/lib/krb5/store_emem.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/source4/heimdal/lib/krb5/store_emem.c b/source4/heimdal/lib/krb5/store_emem.c
index 4be89b6564..acf984280e 100644
--- a/source4/heimdal/lib/krb5/store_emem.c
+++ b/source4/heimdal/lib/krb5/store_emem.c
@@ -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;