This commit is contained in:
Robert Millan 2010-01-18 19:45:50 +00:00
commit 905c7ca691
3 changed files with 14 additions and 8 deletions

View file

@ -1,3 +1,11 @@
2010-01-18 Robert Millan <rmh.grub@aybabtu.com>
* include/grub/term.h (grub_term_register_input,
grub_term_register_output): Check return of terminal init()
routines, and abort if errors are raised.
* commands/terminal.c: Update copyright year.
2010-01-18 Robert Millan <rmh.grub@aybabtu.com> 2010-01-18 Robert Millan <rmh.grub@aybabtu.com>
* commands/terminal.c (grub_cmd_terminal_input) * commands/terminal.c (grub_cmd_terminal_input)

View file

@ -1,6 +1,6 @@
/* /*
* GRUB -- GRand Unified Bootloader * GRUB -- GRand Unified Bootloader
* Copyright (C) 2009 Free Software Foundation, Inc. * Copyright (C) 2009,2010 Free Software Foundation, Inc.
* *
* GRUB is free software: you can redistribute it and/or modify * GRUB is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by * it under the terms of the GNU General Public License as published by

View file

@ -208,9 +208,8 @@ grub_term_register_input (const char *name __attribute__ ((unused)),
else else
{ {
/* If this is the first terminal, enable automatically. */ /* If this is the first terminal, enable automatically. */
if (term->init) if (! term->init || term->init () == GRUB_ERR_NONE)
term->init (); grub_list_push (GRUB_AS_LIST_P (&grub_term_inputs), GRUB_AS_LIST (term));
grub_list_push (GRUB_AS_LIST_P (&grub_term_inputs), GRUB_AS_LIST (term));
} }
} }
@ -224,10 +223,9 @@ grub_term_register_output (const char *name __attribute__ ((unused)),
else else
{ {
/* If this is the first terminal, enable automatically. */ /* If this is the first terminal, enable automatically. */
if (term->init) if (! term->init || term->init () == GRUB_ERR_NONE)
term->init (); grub_list_push (GRUB_AS_LIST_P (&grub_term_outputs),
grub_list_push (GRUB_AS_LIST_P (&grub_term_outputs), GRUB_AS_LIST (term));
GRUB_AS_LIST (term));
} }
} }