[openfirmware] r992 - ofw/core

svn at openfirmware.info svn at openfirmware.info
Mon Nov 3 18:32:12 CET 2008


Author: wmb
Date: 2008-11-03 18:32:11 +0100 (Mon, 03 Nov 2008)
New Revision: 992

Modified:
   ofw/core/bootparm.fth
Log:
Increased the size of args-buf to 256 to handle long Linux cmdlines.


Modified: ofw/core/bootparm.fth
===================================================================
--- ofw/core/bootparm.fth	2008-11-01 01:11:05 UTC (rev 991)
+++ ofw/core/bootparm.fth	2008-11-03 17:32:11 UTC (rev 992)
@@ -66,7 +66,7 @@
 headers
 ' path-buf  " bootpath" chosen-string
 headerless
-d# 128 buffer: args-buf
+d# 256 buffer: args-buf
 headers
 ' args-buf  " bootargs" chosen-string
 
@@ -82,6 +82,13 @@
 ' path-buf is load-path
 
 headerless
+: limit-255  ( adr len -- adr len )
+   dup d# 255 >  if
+      ." Warning: limiting string length to 255 characters" cr
+      drop d# 255
+   then
+;
+
 : (boot-read)  ( adr len -- )
    opened-ih  if                        ( adr len )
       2drop  opened-ih  0 to opened-ih  ( ihandle )
@@ -92,7 +99,7 @@
       ( print-probe-list )
       true abort" "r"nCan't open boot device"r"n"
    then                                         ( fileid )
-   dup ihandle>devname load-path place-cstr drop ( fileid )
+   dup ihandle>devname limit-255 load-path place-cstr drop ( fileid )
    >r                                           ( )
    load-started
    0 !load-size  load-base                      ( load-adr )
@@ -196,7 +203,7 @@
    ."   Arguments: "  2over type              ( file-str device-str )
    )collect ?show-message                     ( file-str device-str )
 
-   2swap args-buf  place-cstr drop	      ( device-str )
+   2swap limit-255 args-buf  place-cstr drop  ( device-str )
 
    boot-read                                  ( )
 ;




More information about the openfirmware mailing list