summaryrefslogtreecommitdiff
path: root/runkernel.inc
diff options
context:
space:
mode:
authorhpa <hpa>2005-05-08 21:47:03 +0000
committerhpa <hpa>2005-05-08 21:47:03 +0000
commitdab010fba1ef01f60751114657452db16248ba9d (patch)
tree45eda2cb91bd1fb333aa74a2df2dd0ea94bf08cf /runkernel.inc
parent25b68a8eb102118d7db99b7b5bdc6682caef701f (diff)
downloadsyslinux-3.08.tar.gz
New Multiboot module; increase command line limit to 1023syslinux-3.08
Diffstat (limited to 'runkernel.inc')
-rw-r--r--runkernel.inc9
1 files changed, 6 insertions, 3 deletions
diff --git a/runkernel.inc b/runkernel.inc
index bc31f9e1..f73998e5 100644
--- a/runkernel.inc
+++ b/runkernel.inc
@@ -345,9 +345,12 @@ need_high_cmdline:
mov [fs:kern_cmd_offset],di ; Store pointer
mov cx,[CmdLineLen]
- add cx,byte 3
- shr cx,2 ; Convert to dwords
- fs rep movsd
+ cmp cx,255
+ jna .len_ok
+ mov cx,255 ; Protocol < 0x202 has 255 as hard limit
+.len_ok:
+ fs rep movsb
+ fs stosb ; Final null, note AL == 0 here
push fs
pop es