[pulseaudio-discuss] [PATCH 3/4] context: Stop and return if srbchannel memblock looks fishy
David Henningsson
david.henningsson at canonical.com
Mon Aug 18 10:23:16 PDT 2014
On 2014-08-18 19:17, Peter Meerwald wrote:
>
>>> handle_srbchannel_memblock() should return when memblock sanity checks fail
>>
>> Hmm, the reason I kept it on separate lines was for more specific error
>> checking, i e, you could tell which of the checks that failed from looking in
>> the debug log. IIRC, I'm not sure? But yeah, the early return makes sense.
>
> ah, ok; I'll add three returns then
>
> any objections to apply the series?
No objections, go ahead.
>
> thanks, p.
>
>>> Signed-off-by: Peter Meerwald <pmeerw at pmeerw.net>
>>> Cc: David Henningsson <david.henningsson at canonical.com>
>>> ---
>>> src/pulse/context.c | 9 ++++-----
>>> 1 file changed, 4 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/src/pulse/context.c b/src/pulse/context.c
>>> index db89b58..b8ebced 100644
>>> --- a/src/pulse/context.c
>>> +++ b/src/pulse/context.c
>>> @@ -350,12 +350,11 @@ static void handle_srbchannel_memblock(pa_context *c,
>>> pa_memblock *memblock) {
>>> pa_assert(c);
>>>
>>> /* Memblock sanity check */
>>> - if (!memblock)
>>> - pa_context_fail(c, PA_ERR_PROTOCOL);
>>> - else if (pa_memblock_is_read_only(memblock))
>>> - pa_context_fail(c, PA_ERR_PROTOCOL);
>>> - else if (pa_memblock_is_ours(memblock))
>>> + if (!memblock || pa_memblock_is_read_only(memblock) ||
>>> + pa_memblock_is_ours(memblock)) {
>>> pa_context_fail(c, PA_ERR_PROTOCOL);
>>> + return;
>>> + }
>>>
>>> /* Create the srbchannel */
>>> c->srb_template.memblock = memblock;
>>>
>>
>>
>
--
David Henningsson, Canonical Ltd.
https://launchpad.net/~diwic
More information about the pulseaudio-discuss
mailing list