|
@@ -1756,18 +1756,19 @@ static int __add_preferred_console(char *name, int idx, char *options,
|
|
|
* See if this tty is not yet registered, and
|
|
|
* if we have a slot free.
|
|
|
*/
|
|
|
- for (i = 0; i < MAX_CMDLINECONSOLES && console_cmdline[i].name[0]; i++)
|
|
|
- if (strcmp(console_cmdline[i].name, name) == 0 &&
|
|
|
- console_cmdline[i].index == idx) {
|
|
|
- if (!brl_options)
|
|
|
- selected_console = i;
|
|
|
- return 0;
|
|
|
+ for (i = 0, c = console_cmdline;
|
|
|
+ i < MAX_CMDLINECONSOLES && c->name[0];
|
|
|
+ i++, c++) {
|
|
|
+ if (strcmp(c->name, name) == 0 && c->index == idx) {
|
|
|
+ if (!brl_options)
|
|
|
+ selected_console = i;
|
|
|
+ return 0;
|
|
|
}
|
|
|
+ }
|
|
|
if (i == MAX_CMDLINECONSOLES)
|
|
|
return -E2BIG;
|
|
|
if (!brl_options)
|
|
|
selected_console = i;
|
|
|
- c = &console_cmdline[i];
|
|
|
strlcpy(c->name, name, sizeof(c->name));
|
|
|
c->options = options;
|
|
|
braille_set_options(c, brl_options);
|
|
@@ -1840,15 +1841,15 @@ int update_console_cmdline(char *name, int idx, char *name_new, int idx_new, cha
|
|
|
struct console_cmdline *c;
|
|
|
int i;
|
|
|
|
|
|
- for (i = 0; i < MAX_CMDLINECONSOLES && console_cmdline[i].name[0]; i++)
|
|
|
- if (strcmp(console_cmdline[i].name, name) == 0 &&
|
|
|
- console_cmdline[i].index == idx) {
|
|
|
- c = &console_cmdline[i];
|
|
|
- strlcpy(c->name, name_new, sizeof(c->name));
|
|
|
- c->name[sizeof(c->name) - 1] = 0;
|
|
|
- c->options = options;
|
|
|
- c->index = idx_new;
|
|
|
- return i;
|
|
|
+ for (i = 0, c = console_cmdline;
|
|
|
+ i < MAX_CMDLINECONSOLES && c->name[0];
|
|
|
+ i++, c++)
|
|
|
+ if (strcmp(c->name, name) == 0 && c->index == idx) {
|
|
|
+ strlcpy(c->name, name_new, sizeof(c->name));
|
|
|
+ c->name[sizeof(c->name) - 1] = 0;
|
|
|
+ c->options = options;
|
|
|
+ c->index = idx_new;
|
|
|
+ return i;
|
|
|
}
|
|
|
/* not found */
|
|
|
return -1;
|
|
@@ -2223,6 +2224,7 @@ void register_console(struct console *newcon)
|
|
|
int i;
|
|
|
unsigned long flags;
|
|
|
struct console *bcon = NULL;
|
|
|
+ struct console_cmdline *c;
|
|
|
|
|
|
/*
|
|
|
* before we register a new CON_BOOT console, make sure we don't
|
|
@@ -2270,24 +2272,25 @@ void register_console(struct console *newcon)
|
|
|
* See if this console matches one we selected on
|
|
|
* the command line.
|
|
|
*/
|
|
|
- for (i = 0; i < MAX_CMDLINECONSOLES && console_cmdline[i].name[0];
|
|
|
- i++) {
|
|
|
- if (strcmp(console_cmdline[i].name, newcon->name) != 0)
|
|
|
+ for (i = 0, c = console_cmdline;
|
|
|
+ i < MAX_CMDLINECONSOLES && c->name[0];
|
|
|
+ i++, c++) {
|
|
|
+ if (strcmp(c->name, newcon->name) != 0)
|
|
|
continue;
|
|
|
if (newcon->index >= 0 &&
|
|
|
- newcon->index != console_cmdline[i].index)
|
|
|
+ newcon->index != c->index)
|
|
|
continue;
|
|
|
if (newcon->index < 0)
|
|
|
- newcon->index = console_cmdline[i].index;
|
|
|
+ newcon->index = c->index;
|
|
|
|
|
|
- if (_braille_register_console(newcon, &console_cmdline[i]))
|
|
|
+ if (_braille_register_console(newcon, c))
|
|
|
return;
|
|
|
|
|
|
if (newcon->setup &&
|
|
|
newcon->setup(newcon, console_cmdline[i].options) != 0)
|
|
|
break;
|
|
|
newcon->flags |= CON_ENABLED;
|
|
|
- newcon->index = console_cmdline[i].index;
|
|
|
+ newcon->index = c->index;
|
|
|
if (i == selected_console) {
|
|
|
newcon->flags |= CON_CONSDEV;
|
|
|
preferred_console = selected_console;
|