Deleted Added
full compact
exoparg2.c (99679) exoparg2.c (100966)
1/******************************************************************************
2 *
3 * Module Name: exoparg2 - AML execution - opcodes with 2 arguments
1/******************************************************************************
2 *
3 * Module Name: exoparg2 - AML execution - opcodes with 2 arguments
4 * $Revision: 108 $
4 * $Revision: 109 $
5 *
6 *****************************************************************************/
7
8/******************************************************************************
9 *
10 * 1. Copyright Notice
11 *
12 * Some or all of this work - Copyright (c) 1999 - 2002, Intel Corp.

--- 452 unchanged lines hidden (view full) ---

465 * At this point, the Source operand is either a Package or a Buffer
466 */
467 if (ACPI_GET_OBJECT_TYPE (Operand[0]) == ACPI_TYPE_PACKAGE)
468 {
469 /* Object to be indexed is a Package */
470
471 if (Index >= Operand[0]->Package.Count)
472 {
5 *
6 *****************************************************************************/
7
8/******************************************************************************
9 *
10 * 1. Copyright Notice
11 *
12 * Some or all of this work - Copyright (c) 1999 - 2002, Intel Corp.

--- 452 unchanged lines hidden (view full) ---

465 * At this point, the Source operand is either a Package or a Buffer
466 */
467 if (ACPI_GET_OBJECT_TYPE (Operand[0]) == ACPI_TYPE_PACKAGE)
468 {
469 /* Object to be indexed is a Package */
470
471 if (Index >= Operand[0]->Package.Count)
472 {
473 ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "Index value beyond package end\n"));
473 ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "Index value (%X) beyond package end (%X)\n",
474 Index, Operand[0]->Package.Count));
474 Status = AE_AML_PACKAGE_LIMIT;
475 goto Cleanup;
476 }
477
478 if ((ACPI_GET_OBJECT_TYPE (Operand[2]) == ACPI_TYPE_INTEGER) &&
479 (Operand[2]->Common.Flags & AOPOBJ_AML_CONSTANT))
480 {
481 /*

--- 29 unchanged lines hidden (view full) ---

511 }
512
513 else
514 {
515 /* Object to be indexed is a Buffer */
516
517 if (Index >= Operand[0]->Buffer.Length)
518 {
475 Status = AE_AML_PACKAGE_LIMIT;
476 goto Cleanup;
477 }
478
479 if ((ACPI_GET_OBJECT_TYPE (Operand[2]) == ACPI_TYPE_INTEGER) &&
480 (Operand[2]->Common.Flags & AOPOBJ_AML_CONSTANT))
481 {
482 /*

--- 29 unchanged lines hidden (view full) ---

512 }
513
514 else
515 {
516 /* Object to be indexed is a Buffer */
517
518 if (Index >= Operand[0]->Buffer.Length)
519 {
519 ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "Index value beyond end of buffer\n"));
520 ACPI_DEBUG_PRINT ((ACPI_DB_ERROR, "Index value (%X) beyond end of buffer (%X)\n",
521 Index, Operand[0]->Buffer.Length));
520 Status = AE_AML_BUFFER_LIMIT;
521 goto Cleanup;
522 }
523
524 ReturnDesc->Reference.Opcode = AML_INDEX_OP;
525 ReturnDesc->Reference.TargetType = ACPI_TYPE_BUFFER_FIELD;
526 ReturnDesc->Reference.Object = Operand[0];
527 ReturnDesc->Reference.Offset = Index;

--- 112 unchanged lines hidden (view full) ---

640 LogicalResult = TRUE; /* TRUE, Wait timed out */
641 Status = AE_OK;
642 }
643 break;
644
645
646 default:
647
522 Status = AE_AML_BUFFER_LIMIT;
523 goto Cleanup;
524 }
525
526 ReturnDesc->Reference.Opcode = AML_INDEX_OP;
527 ReturnDesc->Reference.TargetType = ACPI_TYPE_BUFFER_FIELD;
528 ReturnDesc->Reference.Object = Operand[0];
529 ReturnDesc->Reference.Offset = Index;

--- 112 unchanged lines hidden (view full) ---

642 LogicalResult = TRUE; /* TRUE, Wait timed out */
643 Status = AE_OK;
644 }
645 break;
646
647
648 default:
649
648 ACPI_REPORT_ERROR (("AcpiExOpcode_2A_0T_1R: Unknown opcode %X\n", WalkState->Opcode));
650 ACPI_REPORT_ERROR (("AcpiExOpcode_2A_0T_1R: Unknown opcode %X\n",
651 WalkState->Opcode));
649 Status = AE_AML_BAD_OPCODE;
650 goto Cleanup;
651 }
652
653
654StoreLogicalResult:
655 /*
656 * Set return value to according to LogicalResult. logical TRUE (all ones)

--- 23 unchanged lines hidden ---
652 Status = AE_AML_BAD_OPCODE;
653 goto Cleanup;
654 }
655
656
657StoreLogicalResult:
658 /*
659 * Set return value to according to LogicalResult. logical TRUE (all ones)

--- 23 unchanged lines hidden ---