mirror of https://gitee.com/openkylin/linux.git
spi: spidev_test: check error
Check the result of sscanf to verify a result was found. report and error and abort if pattern was not found. Signed-off-by: Joshua Clayton <stillcompiling@gmail.com> Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
983b27886a
commit
a20874f78b
|
@ -86,13 +86,17 @@ static void hex_dump(const void *src, size_t length, size_t line_size, char *pre
|
||||||
static int unescape(char *_dst, char *_src, size_t len)
|
static int unescape(char *_dst, char *_src, size_t len)
|
||||||
{
|
{
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
|
int match;
|
||||||
char *src = _src;
|
char *src = _src;
|
||||||
char *dst = _dst;
|
char *dst = _dst;
|
||||||
unsigned int ch;
|
unsigned int ch;
|
||||||
|
|
||||||
while (*src) {
|
while (*src) {
|
||||||
if (*src == '\\' && *(src+1) == 'x') {
|
if (*src == '\\' && *(src+1) == 'x') {
|
||||||
sscanf(src + 2, "%2x", &ch);
|
match = sscanf(src + 2, "%2x", &ch);
|
||||||
|
if (!match)
|
||||||
|
pabort("malformed input string");
|
||||||
|
|
||||||
src += 4;
|
src += 4;
|
||||||
*dst++ = (unsigned char)ch;
|
*dst++ = (unsigned char)ch;
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue