From 2389e2a8781ce5b346ddacccb2a61b1da2cd8aab Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 31 Jul 2016 17:57:39 -0400 Subject: Fix memory leak --- plugins/eg-sampler.lv2/sampler.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/eg-sampler.lv2/sampler.c b/plugins/eg-sampler.lv2/sampler.c index 5cc3c96..1557656 100644 --- a/plugins/eg-sampler.lv2/sampler.c +++ b/plugins/eg-sampler.lv2/sampler.c @@ -503,13 +503,14 @@ restore(LV2_Handle instance, // Schedule sample to be loaded by the provided worker lv2_log_trace(&self->logger, "Scheduling restore\n"); LV2_Atom_Forge forge; - LV2_Atom* buf = calloc(1, sizeof(LV2_Atom) * 32 + strlen(path)); + LV2_Atom* buf = (LV2_Atom*)calloc(1, strlen(path) + 128); lv2_atom_forge_init(&forge, self->map); lv2_atom_forge_set_sink(&forge, atom_sink, atom_sink_deref, buf); write_set_file(&forge, &self->uris, path, strlen(path)); const uint32_t msg_size = lv2_atom_pad_size(buf->size); schedule->schedule_work(self->schedule->handle, msg_size, buf + 1); + free(buf); } return LV2_STATE_SUCCESS; -- cgit v1.2.1