X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=QuarkSocPkg%2FQuarkNorthCluster%2FSmm%2FDxeSmm%2FQncSmmDispatcher%2FQNCSmmCore.c;h=47834064ffc121f9e86499792981fbd47904db9a;hp=ba8c72177361af77cc9c08ac11c503109ef853c6;hb=29f169d17a0f09cd1e05c984da5965e08f2b696e;hpb=f9c3b1b5343f53705f1ab72c55c1db440b01f36f;ds=sidebyside diff --git a/QuarkSocPkg/QuarkNorthCluster/Smm/DxeSmm/QncSmmDispatcher/QNCSmmCore.c b/QuarkSocPkg/QuarkNorthCluster/Smm/DxeSmm/QncSmmDispatcher/QNCSmmCore.c index ba8c721773..47834064ff 100644 --- a/QuarkSocPkg/QuarkNorthCluster/Smm/DxeSmm/QncSmmDispatcher/QNCSmmCore.c +++ b/QuarkSocPkg/QuarkNorthCluster/Smm/DxeSmm/QncSmmDispatcher/QNCSmmCore.c @@ -2,7 +2,7 @@ This driver is responsible for the registration of child drivers and the abstraction of the QNC SMI sources. -Copyright (c) 2013-2015 Intel Corporation. +Copyright (c) 2013-2016 Intel Corporation. This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License @@ -351,7 +351,8 @@ Returns: // Gather information about the registration request // Record->Callback = DispatchFunction; - Record->ChildContext = *RegisterContext; + Record->CallbackContext = RegisterContext; + CopyMem (&Record->ChildContext, RegisterContext, sizeof (QNC_SMM_CONTEXT)); Qualified = QUALIFIED_PROTOCOL_FROM_GENERIC (This); @@ -407,7 +408,7 @@ Returns: // // Update ChildContext again as SwSmiInputValue has been changed // - Record->ChildContext = *RegisterContext; + CopyMem (&Record->ChildContext, RegisterContext, sizeof (QNC_SMM_CONTEXT)); } // @@ -688,7 +689,6 @@ QNCSmmCoreDispatcher ( // it supplied in registration. Simply pass back what it gave us. // ASSERT (RecordToExhaust->Callback != NULL); - Context = RecordToExhaust->ChildContext; ContextsMatch = TRUE; } @@ -710,7 +710,7 @@ QNCSmmCoreDispatcher ( RecordToExhaust->Callback ( (EFI_HANDLE) & RecordToExhaust->Link, - &Context, + RecordToExhaust->CallbackContext, CommunicationBuffer, &BufferSize );