diff options
Diffstat (limited to 'fitz/base_memory.c')
-rw-r--r-- | fitz/base_memory.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/fitz/base_memory.c b/fitz/base_memory.c index c9b94f1e..776bdce6 100644 --- a/fitz/base_memory.c +++ b/fitz/base_memory.c @@ -10,7 +10,10 @@ do_scavenging_malloc(fz_context *ctx, unsigned int size) do { p = ctx->alloc->malloc(ctx->alloc->user, size); if (p != NULL) + { + fz_unlock(ctx); return p; + } } while (fz_store_scavenge(ctx, size, &phase)); fz_unlock(ctx); @@ -27,7 +30,10 @@ do_scavenging_realloc(fz_context *ctx, void *p, unsigned int size) do { q = ctx->alloc->realloc(ctx->alloc->user, p, size); if (q != NULL) + { + fz_unlock(ctx); return q; + } } while (fz_store_scavenge(ctx, size, &phase)); fz_unlock(ctx); |