Since r188030 the error value for attach is returned, this means if kbdmux
fails to attach (possibly due to disable hints) then we get called back for unload. Correctly handle the case where the keyboard isnt found rather than calling panic.
This commit is contained in:
parent
882284ccd1
commit
fd66bfec7f
@ -1346,15 +1346,14 @@ kbdmux_modevent(module_t mod, int type, void *data)
|
||||
panic("kbd_get_switch(" KEYBOARD_NAME ") == NULL");
|
||||
|
||||
kbd = kbd_get_keyboard(kbd_find_keyboard(KEYBOARD_NAME, 0));
|
||||
if (kbd == NULL)
|
||||
panic("kbd_get_keyboard(kbd_find_keyboard(" KEYBOARD_NAME ", 0)) == NULL");
|
||||
|
||||
(*sw->disable)(kbd);
|
||||
if (kbd != NULL) {
|
||||
(*sw->disable)(kbd);
|
||||
#ifdef KBD_INSTALL_CDEV
|
||||
kbd_detach(kbd);
|
||||
kbd_detach(kbd);
|
||||
#endif
|
||||
(*sw->term)(kbd);
|
||||
kbd_delete_driver(&kbdmux_kbd_driver);
|
||||
(*sw->term)(kbd);
|
||||
kbd_delete_driver(&kbdmux_kbd_driver);
|
||||
}
|
||||
error = 0;
|
||||
break;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user