[pulseaudio-discuss] [PATCH] bluetooth: Prevent aborts caused by invalid module arguments

David Henningsson david.henningsson at canonical.com
Mon Jan 11 05:55:56 PST 2016


Hi!

The module-bluez5-discover.c one is correct, but the 
module-bluetooth-policy.c does not go to the fail label in case of 
modargs failure, so there is no need for the NULL check there.

Do you want to send a new version of the patch or should I just strip 
half of your patch and commit the other half?

On 2016-01-09 08:37, Jason Gerecke wrote:
> If 'pa_modargs_new' returns a NULL, we need to be careful to not call
> 'pa_modargs_free' in the failure path since it requires that we pass it
> a non-null argument.
>
> Signed-off-by: Jason Gerecke <killertofu at gmail.com>
> ---
>   src/modules/bluetooth/module-bluetooth-policy.c | 3 ++-
>   src/modules/bluetooth/module-bluez5-discover.c  | 3 ++-
>   2 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/src/modules/bluetooth/module-bluetooth-policy.c b/src/modules/bluetooth/module-bluetooth-policy.c
> index fc709ec..ede7c5f 100644
> --- a/src/modules/bluetooth/module-bluetooth-policy.c
> +++ b/src/modules/bluetooth/module-bluetooth-policy.c
> @@ -261,7 +261,8 @@ int pa__init(pa_module *m) {
>       return 0;
>
>   fail:
> -    pa_modargs_free(ma);
> +    if (ma)
> +        pa_modargs_free(ma);
>       return -1;
>   }
>
> diff --git a/src/modules/bluetooth/module-bluez5-discover.c b/src/modules/bluetooth/module-bluez5-discover.c
> index 1ccc1d1..080e5d0 100644
> --- a/src/modules/bluetooth/module-bluez5-discover.c
> +++ b/src/modules/bluetooth/module-bluez5-discover.c
> @@ -137,7 +137,8 @@ int pa__init(pa_module *m) {
>       return 0;
>
>   fail:
> -    pa_modargs_free(ma);
> +    if (ma)
> +        pa_modargs_free(ma);
>       pa__done(m);
>       return -1;
>   }
>

-- 
David Henningsson, Canonical Ltd.
https://launchpad.net/~diwic


More information about the pulseaudio-discuss mailing list