@@ -345,6 +345,12 @@ def create_label(title):
345345 COUNTER += 1
346346 return "label%d" % COUNTER
347347
348+ def parse_boot_entry (line ):
349+ parts = line .split (None , 2 ) # Split into at most 3 parts
350+ entry = parts [1 ] if len (parts ) > 1 else ""
351+ args = parts [2 ] if len (parts ) > 2 else ""
352+ return entry , args
353+
348354 fh = open_textfile (src_file , "r" )
349355 try :
350356 for line in fh :
@@ -395,23 +401,18 @@ def create_label(title):
395401 elif title :
396402 if l .startswith ("multiboot2" ):
397403 if "tboot" in l :
398- tboot , tboot_args = (l .split (None , 1 )
399- [1 ].split (None , 1 ))
404+ tboot , tboot_args = parse_boot_entry (l )
400405 else :
401- hypervisor , hypervisor_args = (l .split (None , 1 )
402- [1 ].split (None , 1 ))
406+ hypervisor , hypervisor_args = parse_boot_entry (l )
403407 elif l .startswith ("module2" ):
404408 if not hypervisor :
405- hypervisor , hypervisor_args = (l .split (None , 1 )
406- [1 ].split (None , 1 ))
409+ hypervisor , hypervisor_args = parse_boot_entry (l )
407410 elif kernel :
408411 initrd = l .split (None , 1 )[1 ]
409412 else :
410- kernel , kernel_args = (l .split (None , 1 )
411- [1 ].split (None , 1 ))
413+ kernel , kernel_args = parse_boot_entry (l )
412414 elif l .startswith ("linux" ):
413- kernel , kernel_args = (l .split (None , 1 )
414- [1 ].split (None , 1 ))
415+ kernel , kernel_args = parse_boot_entry (l )
415416 elif l .startswith ("initrd" ):
416417 initrd = l .split (None , 1 )[1 ]
417418 elif l .startswith ("search --label --set root" ):
0 commit comments