Module Name: src
Committed By: rin
Date: Wed Oct 2 09:36:30 UTC 2019
Modified Files:
src/sys/ddb: db_lex.c
Log Message:
Simplify logic to get rid of implicit dependence on order of ASCII
codes of upper and lower cases ('a' > 'A').
Found by the lgtm bot.
No functional changes intended.
To generate a diff of this commit:
cvs rdiff -u -r1.23 -r1.24 src/sys/ddb/db_lex.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/ddb/db_lex.c
diff -u src/sys/ddb/db_lex.c:1.23 src/sys/ddb/db_lex.c:1.24
--- src/sys/ddb/db_lex.c:1.23 Sun Sep 29 02:00:22 2019
+++ src/sys/ddb/db_lex.c Wed Oct 2 09:36:30 2019
@@ -1,4 +1,4 @@
-/* $NetBSD: db_lex.c,v 1.23 2019/09/29 02:00:22 uwe Exp $ */
+/* $NetBSD: db_lex.c,v 1.24 2019/10/02 09:36:30 rin Exp $ */
/*
* Mach Operating System
@@ -34,7 +34,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: db_lex.c,v 1.23 2019/09/29 02:00:22 uwe Exp $");
+__KERNEL_RCSID(0, "$NetBSD: db_lex.c,v 1.24 2019/10/02 09:36:30 rin Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -210,14 +210,14 @@ db_lex(void)
for (;;) {
if (c >= '0' && c <= ((r == 8) ? '7' : '9'))
digit = c - '0';
- else if (r == 16 && ((c >= 'A' && c <= 'F') ||
- (c >= 'a' && c <= 'f'))) {
- if (c >= 'a')
- digit = c - 'a' + 10;
- else if (c >= 'A')
+ else if (r == 16) {
+ if (c >= 'A' && c <= 'F')
digit = c - 'A' + 10;
- }
- else
+ else if (c >= 'a' && c <= 'f')
+ digit = c - 'a' + 10;
+ else
+ break;
+ } else
break;
db_tok_number = db_tok_number * r + digit;
c = db_read_char();