summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Abel <rabel@robertabel.eu>2018-02-10 02:50:10 +0300
committerMiguel Ojeda <miguel.ojeda.sandonis@gmail.com>2018-04-12 20:02:44 +0300
commit2e8c04f75731bbd968fa77e94ed856f2dcf53ae6 (patch)
tree5e9f186448e00459b39e4068a1022132c070ea84
parent99b9b4909c72e06b46e2fdf083c96b585cb84adb (diff)
downloadlinux-2e8c04f75731bbd968fa77e94ed856f2dcf53ae6.tar.xz
auxdisplay: charlcd: fix hex literal ranges for graphics command
The graphics command expects 16 hexadecimal literals, but would allow characters in range [0-9a-zA-Z] instead of [0-9a-fA-F]. Signed-off-by: Robert Abel <rabel@robertabel.eu> Acked-by: Willy Tarreau <w@1wt.eu> Reviewed-by: Geert Uytterhoeven <geert@linux-m68k.org> Signed-off-by: Miguel Ojeda <miguel.ojeda.sandonis@gmail.com>
-rw-r--r--drivers/auxdisplay/charlcd.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/auxdisplay/charlcd.c b/drivers/auxdisplay/charlcd.c
index 0246ff77e772..674ffbae1c65 100644
--- a/drivers/auxdisplay/charlcd.c
+++ b/drivers/auxdisplay/charlcd.c
@@ -443,9 +443,9 @@ static inline int handle_lcd_special_code(struct charlcd *lcd)
shift ^= 4;
if (*esc >= '0' && *esc <= '9') {
value |= (*esc - '0') << shift;
- } else if (*esc >= 'A' && *esc <= 'Z') {
+ } else if (*esc >= 'A' && *esc <= 'F') {
value |= (*esc - 'A' + 10) << shift;
- } else if (*esc >= 'a' && *esc <= 'z') {
+ } else if (*esc >= 'a' && *esc <= 'f') {
value |= (*esc - 'a' + 10) << shift;
} else {
esc++;