From 0f3a8176bc332d6fa17ddf3a65962f8eb640b2ac Mon Sep 17 00:00:00 2001 From: Jonathan Cameron Date: Sun, 4 Dec 2011 19:10:58 +0000 Subject: [PATCH] --- yaml --- r: 281237 b: refs/heads/master c: a7f7c364e8db9510a41f4074035454779e159dd9 h: refs/heads/master i: 281235: 108ecfadfe585269718ff4a5513468486397d4e7 v: v3 --- [refs] | 2 +- .../staging/iio/Documentation/iio_utils.h | 18 +++++++++++++++--- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 84e28b244a42..72eab66a5083 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 014fcb1db5d8fd1dde1e3b777389edcd8d85a2e2 +refs/heads/master: a7f7c364e8db9510a41f4074035454779e159dd9 diff --git a/trunk/drivers/staging/iio/Documentation/iio_utils.h b/trunk/drivers/staging/iio/Documentation/iio_utils.h index dbbad8a16382..986889b6a1f6 100644 --- a/trunk/drivers/staging/iio/Documentation/iio_utils.h +++ b/trunk/drivers/staging/iio/Documentation/iio_utils.h @@ -145,9 +145,17 @@ inline int iioutils_get_type(unsigned *is_signed, ret = -errno; goto error_free_filename; } - fscanf(sysfsfp, - "%c%u/%u>>%u", &signchar, bits_used, - &padint, shift); + + ret = fscanf(sysfsfp, + "%ce:%c%u/%u>>%u", + &endianchar, + &signchar, + bits_used, + &padint, shift); + if (ret < 0) { + printf("failed to pass scan type description\n"); + return ret; + } *bytes = padint / 8; if (*bits_used == 64) *mask = ~0; @@ -157,6 +165,10 @@ inline int iioutils_get_type(unsigned *is_signed, *is_signed = 1; else *is_signed = 0; + fclose(sysfsfp); + free(filename); + + filename = 0; } error_free_filename: if (filename)