If we pass 0 as pygrub --entry argument (i.e. we want to boot first item), default value is used instead. This is dueto wrong check for range of allowed values of index - 0 is index of first item. Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com> Patch: --- diff --git a/tools/pygrub/src/pygrub b/tools/pygrub/src/pygrub index 1845485..eedfdb2 100644 --- a/tools/pygrub/src/pygrub +++ b/tools/pygrub/src/pygrub @@ -613,7 +613,7 @@ def run_grub(file, entry, fs, cfg_args): # set the entry to boot as requested if entry is not None: idx = get_entry_idx(g.cf, entry) - if idx is not None and idx > 0 and idx < len(g.cf.images): + if idx is not None and idx >= 0 and idx < len(g.cf.images): sel = idx if sel == -1:
On Wed, Jan 09, 2013 at 02:29:29PM +0100, Miroslav Rezanina wrote:> If we pass 0 as pygrub --entry argument (i.e. we want to boot first > item), default value is used instead. This is dueto wrong check for > range of allowed values of index - 0 is index of first item. > > Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>Acked-by: Matt Wilson <msw@amazon.com>> Patch: > --- > diff --git a/tools/pygrub/src/pygrub b/tools/pygrub/src/pygrub > index 1845485..eedfdb2 100644 > --- a/tools/pygrub/src/pygrub > +++ b/tools/pygrub/src/pygrub > @@ -613,7 +613,7 @@ def run_grub(file, entry, fs, cfg_args): > # set the entry to boot as requested > if entry is not None: > idx = get_entry_idx(g.cf, entry) > - if idx is not None and idx > 0 and idx < len(g.cf.images): > + if idx is not None and idx >= 0 and idx < len(g.cf.images): > sel = idx > > if sel == -1:
On Thu, 2013-01-10 at 08:36 +0000, Matt Wilson wrote:> On Wed, Jan 09, 2013 at 02:29:29PM +0100, Miroslav Rezanina wrote: > > If we pass 0 as pygrub --entry argument (i.e. we want to boot first > > item), default value is used instead. This is dueto wrong check for > > range of allowed values of index - 0 is index of first item. > > > > Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com> > > Acked-by: Matt Wilson <msw@amazon.com>Acked + applied, thanks.