diff options
| -rw-r--r-- | util/nvmutil/nvmutil.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/util/nvmutil/nvmutil.c b/util/nvmutil/nvmutil.c index bcf205c3..73527723 100644 --- a/util/nvmutil/nvmutil.c +++ b/util/nvmutil/nvmutil.c @@ -340,9 +340,14 @@ hextonum(char ch) static uint8_t rhex(void) { - static uint8_t n = 0, rnum[12]; - if (!n) - err_if(read(rfd, (uint8_t *) &rnum, (n = 11) + 1) == -1); + static uint8_t n = 0; + static uint8_t rnum[12]; + + if (!n) { + n = sizeof(rnum) - 1; + err_if(read(rfd, (uint8_t *) &rnum, n + 1) == -1); + } + return rnum[n--] & 0xf; } |
