aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBob Moore <robert.moore@intel.com>2008-09-26 23:12:36 -0400
committerLen Brown <len.brown@intel.com>2008-10-22 23:14:45 -0400
commit393a75d6b7bae59221b2122634eb4cb905e84208 (patch)
tree245820dfdec67e14c80500a555caf73c94a17406
parent1044f1f65b7df2aae979e397904c4985eeb99ba2 (diff)
ACPICA: Fix possible memory leak in acpi_ns_get_external_pathname
Fixes a memory leak in the error exit path. Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lin Ming <ming.m.lin@intel.com> Signed-off-by: Len Brown <len.brown@intel.com>
-rw-r--r--drivers/acpi/namespace/nsnames.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/acpi/namespace/nsnames.c b/drivers/acpi/namespace/nsnames.c
index bd577387800..9c587bdfe3f 100644
--- a/drivers/acpi/namespace/nsnames.c
+++ b/drivers/acpi/namespace/nsnames.c
@@ -142,7 +142,7 @@ char *acpi_ns_get_external_pathname(struct acpi_namespace_node *node)
142 142
143 size = acpi_ns_get_pathname_length(node); 143 size = acpi_ns_get_pathname_length(node);
144 if (!size) { 144 if (!size) {
145 return (NULL); 145 return_PTR(NULL);
146 } 146 }
147 147
148 /* Allocate a buffer to be returned to caller */ 148 /* Allocate a buffer to be returned to caller */
@@ -157,7 +157,8 @@ char *acpi_ns_get_external_pathname(struct acpi_namespace_node *node)
157 157
158 status = acpi_ns_build_external_path(node, size, name_buffer); 158 status = acpi_ns_build_external_path(node, size, name_buffer);
159 if (ACPI_FAILURE(status)) { 159 if (ACPI_FAILURE(status)) {
160 return (NULL); 160 ACPI_FREE(name_buffer);
161 return_PTR(NULL);
161 } 162 }
162 163
163 return_PTR(name_buffer); 164 return_PTR(name_buffer);