sony-laptop: potential null dereference
authorDan Carpenter <error27@gmail.com>
Sun, 27 Feb 2011 14:13:25 +0000 (17:13 +0300)
committerMatthew Garrett <mjg@redhat.com>
Mon, 28 Mar 2011 10:07:25 +0000 (06:07 -0400)
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>
drivers/platform/x86/sony-laptop.c

index bd1b9ad..4ab898a 100644 (file)
@@ -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;