On 2014-10-17 12:06, Arun Raghavan wrote: > On Thu, 2014-10-16 at 11:41 +0200, David Henningsson wrote: >> We will just ignore the memblock if this happens. We already have >> a check for this in the client library, so this one is just for >> security reasons. >> >> Signed-off-by: David Henningsson <david.henningsson at canonical.com> >> --- >> src/pulsecore/protocol-native.c | 7 +++++++ >> 1 file changed, 7 insertions(+) >> >> diff --git a/src/pulsecore/protocol-native.c b/src/pulsecore/protocol-native.c >> index 6ec65d6..2ef1854 100644 >> --- a/src/pulsecore/protocol-native.c >> +++ b/src/pulsecore/protocol-native.c >> @@ -4922,6 +4922,13 @@ static void pstream_memblock_callback(pa_pstream *p, uint32_t channel, int64_t o >> if (playback_stream_isinstance(stream)) { >> playback_stream *ps = PLAYBACK_STREAM(stream); >> >> + size_t frame_size = pa_frame_size(&ps->sink_input->sample_spec); >> + if (chunk->index % frame_size != 0 || chunk->length % frame_size != 0) { >> + pa_log_warn("Client sent non-aligned memblock: index %d, length %d, frame size: %d", >> + (int) chunk->index, (int) chunk->length, (int) frame_size); >> + return; >> + } >> + > > Do we need to release chunk->memblock if it exists here? No, unless you see something I don't? There is no call to pa_memblock_acquire above the added lines, so we should not call pa_memblock_release. Okay to push this series, given that I drop _se in the first patch? -- David Henningsson, Canonical Ltd. https://launchpad.net/~diwic