]> git.proxmox.com Git - mirror_edk2.git/commitdiff
MdeModulePkg Variable: Move CacheVariable->InDeletedTransitionPtr NULL pointer check
authorStar Zeng <star.zeng@intel.com>
Wed, 28 Oct 2015 00:48:43 +0000 (00:48 +0000)
committerlzeng14 <lzeng14@Edk2>
Wed, 28 Oct 2015 00:48:43 +0000 (00:48 +0000)
This change is triggered by R18654 "Enhance variable performance by reading from existed memory cache"
that changed the code to use CacheVariable to improve performance.
So the CacheVariable->InDeletedTransitionPtr NULL pointer check needs to be moved to the place before
it is been used.

Cc: Shumin Qiu <shumin.qiu@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Star Zeng <star.zeng@intel.com>
Reviewed-by: Shumin Qiu <shumin.qiu@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18688 6f19259b-4bc3-4df7-8a09-765794883524

MdeModulePkg/Universal/Variable/RuntimeDxe/Variable.c

index e5ffb5a4e328412cbf1f715dc3345ffa71486d00..621ce16da006454f344b3809dd96f5ad869fecaf 100644 (file)
@@ -2280,6 +2280,7 @@ UpdateVariable (
         // Both ADDED and IN_DELETED_TRANSITION variable are present,\r
         // set IN_DELETED_TRANSITION one to DELETED state first.\r
         //\r
+        ASSERT (CacheVariable->InDeletedTransitionPtr != NULL);\r
         State = CacheVariable->InDeletedTransitionPtr->State;\r
         State &= VAR_DELETED;\r
         Status = UpdateVariableStore (\r
@@ -2293,7 +2294,6 @@ UpdateVariable (
                    );\r
         if (!EFI_ERROR (Status)) {\r
           if (!Variable->Volatile) {\r
-            ASSERT (CacheVariable->InDeletedTransitionPtr != NULL);\r
             CacheVariable->InDeletedTransitionPtr->State = State;\r
           }\r
         } else {\r
@@ -2719,6 +2719,7 @@ UpdateVariable (
       // Both ADDED and IN_DELETED_TRANSITION old variable are present,\r
       // set IN_DELETED_TRANSITION one to DELETED state first.\r
       //\r
+      ASSERT (CacheVariable->InDeletedTransitionPtr != NULL);\r
       State = CacheVariable->InDeletedTransitionPtr->State;\r
       State &= VAR_DELETED;\r
       Status = UpdateVariableStore (\r
@@ -2732,7 +2733,6 @@ UpdateVariable (
                  );\r
       if (!EFI_ERROR (Status)) {\r
         if (!Variable->Volatile) {\r
-          ASSERT (CacheVariable->InDeletedTransitionPtr != NULL);\r
           CacheVariable->InDeletedTransitionPtr->State = State;\r
         }\r
       } else {\r