[Bluetooth] Fix NULL pointer dereference in HCI line discipline
Normally a serial Bluetooth device is opened, TIOSETD'ed to N_HCI line discipline, HCIUARTSETPROTO'ed and finally closed. In case the device fails to HCIUARTSETPROTO, closing it produces a NULL pointer dereference. Signed-off-by: Ohad Ben-Cohen <ohad@bencohen.org> Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
Родитель
d215874460
Коммит
22ad42033b
|
@ -307,7 +307,9 @@ static void hci_uart_tty_close(struct tty_struct *tty)
|
|||
|
||||
if (hu) {
|
||||
struct hci_dev *hdev = hu->hdev;
|
||||
hci_uart_close(hdev);
|
||||
|
||||
if (hdev)
|
||||
hci_uart_close(hdev);
|
||||
|
||||
if (test_and_clear_bit(HCI_UART_PROTO_SET, &hu->flags)) {
|
||||
hu->proto->close(hu);
|
||||
|
|
Загрузка…
Ссылка в новой задаче