summaryrefslogtreecommitdiff
path: root/drivers/media
diff options
context:
space:
mode:
authorJesper Juhl <jj@chaosbits.net>2011-08-01 23:39:17 +0200
committerJiri Kosina <jkosina@suse.cz>2011-09-15 14:58:48 +0200
commit10e4ac572eeffe5317019bd7330b6058a400dfc2 (patch)
tree6c2965ac2eb9ddd03509dc672c43ecd3f9614249 /drivers/media
parent129220848c733c742b92ec8e384788353d13cbeb (diff)
downloadlwn-10e4ac572eeffe5317019bd7330b6058a400dfc2.tar.gz
lwn-10e4ac572eeffe5317019bd7330b6058a400dfc2.zip
viacam: Don't explode if pci_find_bus() returns NULL
In the unlikely case that pci_find_bus() should return NULL viacam_serial_is_enabled() is going to dereference a NULL pointer and blow up. Better safe than sorry, so be defensive and check the pointer. Signed-off-by: Jesper Juhl <jj@chaosbits.net> Acked-by: Jonathan Corbet <corbet@lwn.net> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'drivers/media')
-rw-r--r--drivers/media/video/via-camera.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/media/video/via-camera.c b/drivers/media/video/via-camera.c
index 85d3048c1d67..bb7f17f2a33c 100644
--- a/drivers/media/video/via-camera.c
+++ b/drivers/media/video/via-camera.c
@@ -1332,6 +1332,8 @@ static __devinit bool viacam_serial_is_enabled(void)
struct pci_bus *pbus = pci_find_bus(0, 0);
u8 cbyte;
+ if (!pbus)
+ return false;
pci_bus_read_config_byte(pbus, VIACAM_SERIAL_DEVFN,
VIACAM_SERIAL_CREG, &cbyte);
if ((cbyte & VIACAM_SERIAL_BIT) == 0)