summaryrefslogtreecommitdiffstats
path: root/sys/contrib/dev/acpica/components/resources/rslist.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/contrib/dev/acpica/components/resources/rslist.c')
-rw-r--r--sys/contrib/dev/acpica/components/resources/rslist.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/sys/contrib/dev/acpica/components/resources/rslist.c b/sys/contrib/dev/acpica/components/resources/rslist.c
index 2c69c349..81e7292 100644
--- a/sys/contrib/dev/acpica/components/resources/rslist.c
+++ b/sys/contrib/dev/acpica/components/resources/rslist.c
@@ -199,6 +199,15 @@ AcpiRsConvertResourcesToAml (
return_ACPI_STATUS (AE_BAD_DATA);
}
+ /* Sanity check the length. It must not be zero, or we loop forever */
+
+ if (!Resource->Length)
+ {
+ ACPI_ERROR ((AE_INFO,
+ "Invalid zero length descriptor in resource list\n"));
+ return_ACPI_STATUS (AE_AML_BAD_RESOURCE_LENGTH);
+ }
+
/* Perform the conversion */
if (Resource->Type == ACPI_RESOURCE_TYPE_SERIAL_BUS)
OpenPOWER on IntegriCloud