Not only do we accept a Compatibility16 table with a bad checksum, but
we don't even print the (misspelled) debug message that we're apparently
supposed to print. Fix that, because it offended me when testing that
SeaBIOS got its checksum right...

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: David Woodhouse <david.woodho...@intel.com>
---

Perhaps we should only accept the bad checksum on debug builds?

diff --git a/IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacyBios.c 
b/IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacyBios.c
index 99a76c9..8c5d555 100644
--- a/IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacyBios.c
+++ b/IntelFrameworkModulePkg/Csm/LegacyBiosDxe/LegacyBios.c
@@ -333,8 +333,8 @@ ShadowAndStartLegacy16 (
       for (CheckSum = 0; Ptr < PtrEnd; Ptr++) {
         CheckSum = (UINT8) (CheckSum +*Ptr);
       }
-
-      Done = TRUE;
+      if (!CheckSum)
+        Done = TRUE;
     }
   }
 
@@ -347,7 +347,7 @@ ShadowAndStartLegacy16 (
     //
     // Legacy16 table header checksum error.
     //
-    DEBUG ((EFI_D_ERROR, "Legacy16 table found with bad talbe header 
checksum\n"));
+    DEBUG ((EFI_D_ERROR, "Legacy16 table found with bad table header 
checksum\n"));
   }
 
   //

-- 
David Woodhouse                            Open Source Technology Centre
david.woodho...@intel.com                              Intel Corporation



Attachment: smime.p7s
Description: S/MIME cryptographic signature

------------------------------------------------------------------------------
Master Java SE, Java EE, Eclipse, Spring, Hibernate, JavaScript, jQuery
and much more. Keep your Java skills current with LearnJavaNow -
200+ hours of step-by-step video tutorials by Java experts.
SALE $49.99 this month only -- learn more at:
http://p.sf.net/sfu/learnmore_122612 
_______________________________________________
edk2-devel mailing list
edk2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to