summaryrefslogtreecommitdiffstats
path: root/drivers/acpi
diff options
context:
space:
mode:
authorDave Jones <davej@redhat.com>2006-03-08 22:12:00 -0500
committerLen Brown <len.brown@intel.com>2006-03-31 01:02:39 -0500
commitfdc136ccd3332938e989439c025c363f8479f3e6 (patch)
tree6e71b49f8b1ed92fe0c51984e27379acdf2991c3 /drivers/acpi
parenta1f9e65e2085e0a87f28a4d5a8ae43b32c087f24 (diff)
downloadlinux-stable-fdc136ccd3332938e989439c025c363f8479f3e6.tar.gz
linux-stable-fdc136ccd3332938e989439c025c363f8479f3e6.tar.bz2
linux-stable-fdc136ccd3332938e989439c025c363f8479f3e6.zip
[ACPI] fix possible acpi thermal leak in failure path
Coverity: #601 Signed-off-by: Dave Jones <davej@redhat.com> Signed-off-by: Len Brown <len.brown@intel.com>
Diffstat (limited to 'drivers/acpi')
-rw-r--r--drivers/acpi/thermal.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/acpi/thermal.c b/drivers/acpi/thermal.c
index 19f3ea48475e..d0b44ce2ec5a 100644
--- a/drivers/acpi/thermal.c
+++ b/drivers/acpi/thermal.c
@@ -942,8 +942,10 @@ acpi_thermal_write_trip_points(struct file *file,
memset(limit_string, 0, ACPI_THERMAL_MAX_LIMIT_STR_LEN);
active = kmalloc(ACPI_THERMAL_MAX_ACTIVE * sizeof(int), GFP_KERNEL);
- if (!active)
+ if (!active) {
+ kfree(limit_string);
return_VALUE(-ENOMEM);
+ }
if (!tz || (count > ACPI_THERMAL_MAX_LIMIT_STR_LEN - 1)) {
ACPI_DEBUG_PRINT((ACPI_DB_ERROR, "Invalid argument\n"));