mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-27 14:43:58 +08:00
staging: dgnc: don't forget to check if ->channels[i] is NULL in dgnc_tty_uninit()
Add a check if ->channels[i] is NULL because a NULL pointer may be dereferenced in case one of the allocations failed Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Signed-off-by: Giedrius Statkevičius <giedrius.statkevicius@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
fa52d96c3e
commit
ce2927e9a3
@ -403,7 +403,9 @@ void dgnc_tty_uninit(struct dgnc_board *brd)
|
||||
dgnc_BoardsByMajor[brd->SerialDriver.major] = NULL;
|
||||
brd->dgnc_Serial_Major = 0;
|
||||
for (i = 0; i < brd->nasync; i++) {
|
||||
dgnc_remove_tty_sysfs(brd->channels[i]->ch_tun.un_sysfs);
|
||||
if (brd->channels[i])
|
||||
dgnc_remove_tty_sysfs(brd->channels[i]->
|
||||
ch_tun.un_sysfs);
|
||||
tty_unregister_device(&brd->SerialDriver, i);
|
||||
}
|
||||
tty_unregister_driver(&brd->SerialDriver);
|
||||
@ -414,7 +416,9 @@ void dgnc_tty_uninit(struct dgnc_board *brd)
|
||||
dgnc_BoardsByMajor[brd->PrintDriver.major] = NULL;
|
||||
brd->dgnc_TransparentPrint_Major = 0;
|
||||
for (i = 0; i < brd->nasync; i++) {
|
||||
dgnc_remove_tty_sysfs(brd->channels[i]->ch_pun.un_sysfs);
|
||||
if (brd->channels[i])
|
||||
dgnc_remove_tty_sysfs(brd->channels[i]->
|
||||
ch_pun.un_sysfs);
|
||||
tty_unregister_device(&brd->PrintDriver, i);
|
||||
}
|
||||
tty_unregister_driver(&brd->PrintDriver);
|
||||
|
Loading…
Reference in New Issue
Block a user