summaryrefslogtreecommitdiff
path: root/source/components/disassembler/dmbuffer.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/components/disassembler/dmbuffer.c')
-rw-r--r--source/components/disassembler/dmbuffer.c19
1 files changed, 18 insertions, 1 deletions
diff --git a/source/components/disassembler/dmbuffer.c b/source/components/disassembler/dmbuffer.c
index 1d734d4fcff00..47279a2c2a82b 100644
--- a/source/components/disassembler/dmbuffer.c
+++ b/source/components/disassembler/dmbuffer.c
@@ -400,6 +400,10 @@ AcpiDmIsUuidBuffer (
/* Buffer size is the buffer argument */
SizeOp = Op->Common.Value.Arg;
+ if (!SizeOp)
+ {
+ return (FALSE);
+ }
/* Next, the initializer byte list to examine */
@@ -520,6 +524,10 @@ AcpiDmIsUnicodeBuffer (
/* Buffer size is the buffer argument */
SizeOp = Op->Common.Value.Arg;
+ if (!SizeOp)
+ {
+ return (FALSE);
+ }
/* Next, the initializer byte list to examine */
@@ -596,6 +604,10 @@ AcpiDmIsStringBuffer (
/* Buffer size is the buffer argument */
SizeOp = Op->Common.Value.Arg;
+ if (!SizeOp)
+ {
+ return (FALSE);
+ }
/* Next, the initializer byte list to examine */
@@ -675,13 +687,18 @@ AcpiDmIsPldBuffer (
UINT64 InitializerSize;
+ if (!Op)
+ {
+ return (FALSE);
+ }
+
/*
* Get the BufferSize argument - Buffer(BufferSize)
* If the buffer was generated by the ToPld macro, it must
* be a BYTE constant.
*/
SizeOp = Op->Common.Value.Arg;
- if (SizeOp->Common.AmlOpcode != AML_BYTE_OP)
+ if (!SizeOp || SizeOp->Common.AmlOpcode != AML_BYTE_OP)
{
return (FALSE);
}