mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-10-29 05:40:23 -04:00
memblockq: Drop check for chunk index alignment, require aligned length
There is no requirement for chunk index to be aligned, we only need chunk length to be multiple of sample frame size. Fixes:6434853b0("memblockq: Do not allow non-frame indices in the memblock queue") Fixes:22827a5e1("protocol-native: Fail if trying to push unaligned memblock into queue") Part-of: <https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/merge_requests/779>
This commit is contained in:
parent
5ab2b9cb0e
commit
15e76a69bf
2 changed files with 3 additions and 4 deletions
|
|
@ -286,7 +286,6 @@ int pa_memblockq_push(pa_memblockq* bq, const pa_memchunk *uchunk) {
|
||||||
pa_assert(uchunk->index + uchunk->length <= pa_memblock_get_length(uchunk->memblock));
|
pa_assert(uchunk->index + uchunk->length <= pa_memblock_get_length(uchunk->memblock));
|
||||||
|
|
||||||
pa_assert(uchunk->length % bq->base == 0);
|
pa_assert(uchunk->length % bq->base == 0);
|
||||||
pa_assert(uchunk->index % bq->base == 0);
|
|
||||||
|
|
||||||
if (!can_push(bq, uchunk->length))
|
if (!can_push(bq, uchunk->length))
|
||||||
return -1;
|
return -1;
|
||||||
|
|
|
||||||
|
|
@ -5068,9 +5068,9 @@ static void pstream_memblock_callback(pa_pstream *p, uint32_t channel, int64_t o
|
||||||
playback_stream *ps = PLAYBACK_STREAM(stream);
|
playback_stream *ps = PLAYBACK_STREAM(stream);
|
||||||
|
|
||||||
size_t frame_size = pa_frame_size(&ps->sink_input->sample_spec);
|
size_t frame_size = pa_frame_size(&ps->sink_input->sample_spec);
|
||||||
if (chunk->index % frame_size != 0 || chunk->length % frame_size != 0) {
|
if (chunk->length % frame_size != 0) {
|
||||||
pa_log_warn("Client sent non-aligned memblock: index %d, length %d, frame size: %d",
|
pa_log_warn("Client sent non-aligned memblock: length %d, frame size: %d",
|
||||||
(int) chunk->index, (int) chunk->length, (int) frame_size);
|
(int) chunk->length, (int) frame_size);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue