- Add several patches from upstream to fix several issues (glfo#pipewire/pipewire#2925, glfo#pipewire/pipewire#2928, glfo#pipewire/pipewire#2929): * 0001-module-rt-fix-warning-when-xdg-desktop-portal-isnt-running.patch * 0001-midifile-error-won-invalid-track-size.patch * 0001-impl-node-move-2-state-variables-to-private.patch * 0001-context-rename-a-method.patch * 0002-impl-node-restore-running-state-after-reconfigure.patch * 0001-context-keep-per-node-quantum-and-rate-settings.patch * 0001-fix-use_buffers-checks.patch * 0001-pulse-server-clear-the-drained-state-correctly.patch OBS-URL: https://build.opensuse.org/request/show/1057763 OBS-URL: https://build.opensuse.org/package/show/multimedia:libs/pipewire?expand=0&rev=102
28 lines
735 B
Diff
28 lines
735 B
Diff
From 0ddf80d470449a3aea04111cd7d1b4a2b9b2f8df Mon Sep 17 00:00:00 2001
|
|
From: Wim Taymans <wtaymans@redhat.com>
|
|
Date: Thu, 5 Jan 2023 13:49:52 +0100
|
|
Subject: [PATCH] midifile: error won invalid track size
|
|
|
|
When the track data would exceed the file size, return an error.
|
|
---
|
|
src/tools/midifile.c | 3 +++
|
|
1 file changed, 3 insertions(+)
|
|
|
|
diff --git a/src/tools/midifile.c b/src/tools/midifile.c
|
|
index fbd19ce4a..5276ade73 100644
|
|
--- a/src/tools/midifile.c
|
|
+++ b/src/tools/midifile.c
|
|
@@ -118,6 +118,9 @@ static int read_mtrk(struct midi_file *mf, struct midi_track *track)
|
|
track->size = parse_be32(mf->p + 4);
|
|
|
|
mf->p = track->data + track->size;
|
|
+ if (mf->p > mf->data + mf->size)
|
|
+ return -EINVAL;
|
|
+
|
|
return 0;
|
|
}
|
|
|
|
--
|
|
GitLab
|
|
|