summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@linux.intel.com>2009-03-30 16:03:30 -0700
committerH. Peter Anvin <hpa@linux.intel.com>2009-03-30 16:03:30 -0700
commit1cb06f94c9c1525975254ed41942098d7a741840 (patch)
tree5b60a2962c6fe07115c2dd45100a90ca174f8479
parentd694ce6fdb18e9c74efd56626fbc345a5810c0db (diff)
downloadsyslinux-1cb06f94c9c1525975254ed41942098d7a741840.tar.gz
Fix the new kernel command-line parsersyslinux-3.74-pre14
Impact: bug fix We were incorrectly looking at [ds:di] instead of [es:di] for verifying that a command was properly terminated. Fix. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
-rw-r--r--core/runkernel.inc5
1 files changed, 3 insertions, 2 deletions
diff --git a/core/runkernel.inc b/core/runkernel.inc
index b3968dbd..d068aa56 100644
--- a/core/runkernel.inc
+++ b/core/runkernel.inc
@@ -126,9 +126,10 @@ parse_cmdline:
; This either needs to have been an option with parameter,
; or be followed by EOL/whitespace
- cmp byte [di-1],'='
+ mov ax,[es:di-1] ; AL = last chr; AH = following
+ cmp al,'='
je .is_match
- cmp byte [di],' '
+ cmp ah,' '
ja .no_match
.is_match:
pop ax ; Drop option pointer on stack