3f2879c
From 2919748f67c5e4cf7ec9ce67604c5a82fb09036f Mon Sep 17 00:00:00 2001
3f2879c
From: Vladimir Serbinenko <phcoder@gmail.com>
3f2879c
Date: Sun, 26 Jan 2014 03:31:10 +0100
3f2879c
Subject: [PATCH 047/103] 	* grub-core/term/at_keyboard.c: Tolerate
3f2879c
 missing keyboard.
3f2879c
3f2879c
---
3f2879c
 ChangeLog                    | 4 ++++
3f2879c
 grub-core/term/at_keyboard.c | 3 +++
3f2879c
 2 files changed, 7 insertions(+)
3f2879c
3f2879c
diff --git a/ChangeLog b/ChangeLog
3f2879c
index b80896b..44f018b 100644
3f2879c
--- a/ChangeLog
3f2879c
+++ b/ChangeLog
3f2879c
@@ -1,3 +1,7 @@
3f2879c
+2014-01-26  Vladimir Serbinenko  <phcoder@gmail.com>
3f2879c
+
3f2879c
+	* grub-core/term/at_keyboard.c: Tolerate missing keyboard.
3f2879c
+
3f2879c
 2014-01-26  Mike Gilbert <floppym@gentoo.org>
3f2879c
 
3f2879c
 	grub-install: support for partitioned partx loop devices.
3f2879c
diff --git a/grub-core/term/at_keyboard.c b/grub-core/term/at_keyboard.c
3f2879c
index f5071ce..b4257e8 100644
3f2879c
--- a/grub-core/term/at_keyboard.c
3f2879c
+++ b/grub-core/term/at_keyboard.c
3f2879c
@@ -396,6 +396,9 @@ fetch_key (int *is_break)
3f2879c
   if (! KEYBOARD_ISREADY (grub_inb (KEYBOARD_REG_STATUS)))
3f2879c
     return -1;
3f2879c
   at_key = grub_inb (KEYBOARD_REG_DATA);
3f2879c
+  /* May happen if no keyboard is connected. Just ignore this.  */
3f2879c
+  if (at_key == 0xff)
3f2879c
+    return -1;
3f2879c
   if (at_key == 0xe0)
3f2879c
     {
3f2879c
       e0_received = 1;
3f2879c
-- 
3f2879c
1.9.0
3f2879c