diff options
author | Dan Carpenter <error27@gmail.com> | 2011-02-27 17:13:25 +0300 |
---|---|---|
committer | Matthew Garrett <mjg@redhat.com> | 2011-03-28 06:07:25 -0400 |
commit | 200140bdb52b259380e9082e2a4f25a4ddbb5d68 (patch) | |
tree | b8ec1a3c2cf7b0eb8e2be2a25a8252b31e85e33a /drivers/platform/x86/sony-laptop.c | |
parent | 31f007598cc547ba3239524470386af8ae5f1c13 (diff) | |
download | blackbird-op-linux-200140bdb52b259380e9082e2a4f25a4ddbb5d68.tar.gz blackbird-op-linux-200140bdb52b259380e9082e2a4f25a4ddbb5d68.zip |
sony-laptop: potential null dereference
In the original code, if "device_enum" was NULL then it would
dereference it when it printed the error message.
Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Matthew Garrett <mjg@redhat.com>
Diffstat (limited to 'drivers/platform/x86/sony-laptop.c')
-rw-r--r-- | drivers/platform/x86/sony-laptop.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/platform/x86/sony-laptop.c b/drivers/platform/x86/sony-laptop.c index bd1b9adfbaf9..4ab898a39fea 100644 --- a/drivers/platform/x86/sony-laptop.c +++ b/drivers/platform/x86/sony-laptop.c @@ -1311,7 +1311,11 @@ static void sony_nc_rfkill_setup(struct acpi_device *device) } device_enum = (union acpi_object *) buffer.pointer; - if (!device_enum || device_enum->type != ACPI_TYPE_BUFFER) { + if (!device_enum) { + pr_err(DRV_PFX "No SN06 return object."); + goto out_no_enum; + } + if (device_enum->type != ACPI_TYPE_BUFFER) { pr_err(DRV_PFX "Invalid SN06 return object 0x%.2x\n", device_enum->type); goto out_no_enum; |