Message ID | Y0f+tKCz+ZAIoroQ@dc75zzyyyyyyyyyyyyycy-3.rev.dnainternet.fi (mailing list archive) |
---|---|
State | Accepted |
Headers | show |
Series | tools: iio: iio_utils: fix digit calculation | expand |
On Thu, 13 Oct 2022 15:04:04 +0300 Matti Vaittinen <mazziesaccount@gmail.com> wrote: > The iio_utils uses a digit calculation in order to know length of the > file name containing a buffer number. The digit calculation does not > work for number 0. > > This leads to allocation of one character too small buffer for the > file-name when file name contains value '0'. (Eg. buffer0). > > Fix digit calculation by returning one digit to be present for number > '0'. > > Fixes: 096f9b862e60 ("tools:iio:iio_utils: implement digit calculation") > Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com> hi Matti Makes sense. Applied to the fixes-togreg branch of iio.git and marked for stable. Thanks, Jonathan > --- > tools/iio/iio_utils.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/tools/iio/iio_utils.c b/tools/iio/iio_utils.c > index aadee6d34c74..8d35893b2fa8 100644 > --- a/tools/iio/iio_utils.c > +++ b/tools/iio/iio_utils.c > @@ -547,6 +547,10 @@ static int calc_digits(int num) > { > int count = 0; > > + /* It takes a digit to represent zero */ > + if (!num) > + return 1; > + > while (num != 0) { > num /= 10; > count++; > > base-commit: 4fe89d07dcc2804c8b562f6c7896a45643d34b2f
diff --git a/tools/iio/iio_utils.c b/tools/iio/iio_utils.c index aadee6d34c74..8d35893b2fa8 100644 --- a/tools/iio/iio_utils.c +++ b/tools/iio/iio_utils.c @@ -547,6 +547,10 @@ static int calc_digits(int num) { int count = 0; + /* It takes a digit to represent zero */ + if (!num) + return 1; + while (num != 0) { num /= 10; count++;
The iio_utils uses a digit calculation in order to know length of the file name containing a buffer number. The digit calculation does not work for number 0. This leads to allocation of one character too small buffer for the file-name when file name contains value '0'. (Eg. buffer0). Fix digit calculation by returning one digit to be present for number '0'. Fixes: 096f9b862e60 ("tools:iio:iio_utils: implement digit calculation") Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com> --- tools/iio/iio_utils.c | 4 ++++ 1 file changed, 4 insertions(+) base-commit: 4fe89d07dcc2804c8b562f6c7896a45643d34b2f