aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS3
-rw-r--r--include/lv2/atom/util.h4
-rw-r--r--plugins/eg-metro.lv2/metro.c4
3 files changed, 6 insertions, 5 deletions
diff --git a/NEWS b/NEWS
index 6bbadf7..3ebea56 100644
--- a/NEWS
+++ b/NEWS
@@ -5,9 +5,10 @@ lv2 (1.18.11) unstable; urgency=medium
* Fix pylint warning in test script
* Override pkg-config dependency within meson
* Remove troublesome lv2_atom_assert_double_fits_in_64_bits
+ * eg-metro: Fix memory leak
* ui: Add types for Gtk4UI and Qt6UI
- -- David Robillard <d@drobilla.net> Thu, 11 Jul 2024 23:58:50 +0000
+ -- David Robillard <d@drobilla.net> Sun, 28 Sep 2025 23:27:21 +0000
lv2 (1.18.10) stable; urgency=medium
diff --git a/include/lv2/atom/util.h b/include/lv2/atom/util.h
index 9a3d8a3..32e8b6a 100644
--- a/include/lv2/atom/util.h
+++ b/include/lv2/atom/util.h
@@ -38,9 +38,7 @@ extern "C" {
static inline uint32_t
lv2_atom_pad_size(uint32_t size)
{
- static const uint32_t mask = 7U;
-
- return (size + mask) & ~mask;
+ return (size + 7U) & ~(7U);
}
/** Return the total size of `atom`, including the header. */
diff --git a/plugins/eg-metro.lv2/metro.c b/plugins/eg-metro.lv2/metro.c
index e60a33f..8e4c738 100644
--- a/plugins/eg-metro.lv2/metro.c
+++ b/plugins/eg-metro.lv2/metro.c
@@ -187,7 +187,9 @@ instantiate(const LV2_Descriptor* descriptor,
static void
cleanup(LV2_Handle instance)
{
- free(instance);
+ Metro* self = (Metro*)instance;
+ free(self->wave);
+ free(self);
}
/**