[pulseaudio-discuss] [PATCH] core-util: Filter out not-a-numbers in pa_atod()
David Henningsson
david.henningsson at canonical.com
Fri Apr 10 03:41:30 PDT 2015
Ack, but add isinf too while you're at it?
On 2015-04-10 11:48, Tanu Kaskinen wrote:
> We don't and probably never will have any pa_atod() callers that would
> require "NaN" to be accepted, so let's filter those out in pa_atod(),
> instead of requiring the callers to handle not-a-numbers appropriately
> (which they generally forget to do).
> ---
> src/pulsecore/core-util.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/src/pulsecore/core-util.c b/src/pulsecore/core-util.c
> index 1dad507..4526306 100644
> --- a/src/pulsecore/core-util.c
> +++ b/src/pulsecore/core-util.c
> @@ -23,6 +23,7 @@
> #include <config.h>
> #endif
>
> +#include <math.h>
> #include <stdarg.h>
> #include <stdlib.h>
> #include <signal.h>
> @@ -2448,6 +2449,11 @@ int pa_atod(const char *s, double *ret_d) {
> return -1;
> }
>
> + if (isnan(f)) {
> + errno = EINVAL;
> + return -1;
> + }
> +
> *ret_d = f;
>
> return 0;
More information about the pulseaudio-discuss
mailing list