hwmon: (w83781d) Fix W83782D support (NULL pointer dereference)

Commit 360782dde0 (hwmon: (w83781d) Stop
abusing struct i2c_client for ISA devices) broke W83782D support for
devices connected on the ISA bus. You will hit a NULL pointer
dereference as soon as you read any device attribute. Other devices,
and W83782D devices on the SMBus, aren't affected.

Reported-by: Michel Abraham
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Tested-by: Michel Abraham
This commit is contained in:
Jean Delvare 2009-05-08 20:27:28 +02:00
parent b9008708f2
commit 848ddf116b
1 changed files with 2 additions and 1 deletions

View File

@ -1462,7 +1462,8 @@ static struct w83781d_data *w83781d_update_device(struct device *dev)
data->pwm[i] = data->pwm[i] =
w83781d_read_value(data, w83781d_read_value(data,
W83781D_REG_PWM[i]); W83781D_REG_PWM[i]);
if ((data->type != w83782d || !client->driver) /* Only W83782D on SMBus has PWM3 and PWM4 */
if ((data->type != w83782d || !client)
&& i == 1) && i == 1)
break; break;
} }