From 5b5547126d9e80ce6e9c8572b7eb810990618b57 Mon Sep 17 00:00:00 2001 From: Carl-Daniel Hailfinger Date: Thu, 16 Feb 2012 01:43:06 +0000 Subject: Workaround missing %hhx support in MinGW sscanf MinGW uses standard Windows C libraries and those apparently don't support %hhx for sscanf into a uint8_t. SCNx8 isn't available either. Corresponding to flashrom svn r1495. Signed-off-by: Carl-Daniel Hailfinger Acked-by: Idwer Vollering --- dummyflasher.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'dummyflasher.c') diff --git a/dummyflasher.c b/dummyflasher.c index 6281ff8..9b976d9 100644 --- a/dummyflasher.c +++ b/dummyflasher.c @@ -199,7 +199,12 @@ int dummy_init(void) } } for (i = 0; i < spi_blacklist_size; i++) { - sscanf(tmp + i * 2, "%2hhx", &spi_blacklist[i]); + unsigned int tmp2; + /* SCNx8 is apparently not supported by MSVC (and thus + * MinGW), so work around it with an extra variable + */ + sscanf(tmp + i * 2, "%2x", &tmp2); + spi_blacklist[i] = (uint8_t)tmp2; } msg_pdbg("SPI blacklist is "); for (i = 0; i < spi_blacklist_size; i++) @@ -230,7 +235,12 @@ int dummy_init(void) } } for (i = 0; i < spi_ignorelist_size; i++) { - sscanf(tmp + i * 2, "%2hhx", &spi_ignorelist[i]); + unsigned int tmp2; + /* SCNx8 is apparently not supported by MSVC (and thus + * MinGW), so work around it with an extra variable + */ + sscanf(tmp + i * 2, "%2x", &tmp2); + spi_ignorelist[i] = (uint8_t)tmp2; } msg_pdbg("SPI ignorelist is "); for (i = 0; i < spi_ignorelist_size; i++) -- cgit v1.1