Make the EdkMoudlePkg build by allocate mCallbackFnTable at runtime as PCD_TOTAL_TOKEN_NUMBER could be zero.

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@390 6f19259b-4bc3-4df7-8a09-765794883524
diff --git a/EdkModulePkg/Universal/PCD/Dxe/Service.c b/EdkModulePkg/Universal/PCD/Dxe/Service.c
index bccd0a6..00437f1 100644
--- a/EdkModulePkg/Universal/PCD/Dxe/Service.c
+++ b/EdkModulePkg/Universal/PCD/Dxe/Service.c
@@ -24,7 +24,7 @@
 

 PCD_DATABASE * mPcdDatabase;

 

-LIST_ENTRY mCallbackFnTable[PCD_TOTAL_TOKEN_NUMBER];

+LIST_ENTRY *mCallbackFnTable;

 

 VOID *

 GetWorker (

@@ -310,6 +310,11 @@
   //

   // Initialized the Callback Function Table

   //

+

+  if (PCD_TOTAL_TOKEN_NUMBER != 0) {

+    mCallbackFnTable = AllocateZeroPool (PCD_TOTAL_TOKEN_NUMBER);

+  }

+  

   for (Idx = 0; Idx < PCD_TOTAL_TOKEN_NUMBER; Idx++) {

     InitializeListHead (&mCallbackFnTable[Idx]);

   }