From 1f7de705d6d3cbd33092211da550a621230d6ee1 Mon Sep 17 00:00:00 2001 From: Qing Huang Date: Fri, 10 Oct 2008 02:33:21 +0000 Subject: [PATCH] Add details comments for the code flow to initialize Unicode Collation (2) support. (based on FatPkg commit 824fb80c85dfcb97662b8807c075c6cf7113b521) [jordan.l.justen@intel.com: Use script to relicense to 2-clause BSD] Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Jordan Justen Acked-by: Mark Doran Acked-by: Laszlo Ersek --- FatPkg/EnhancedFatDxe/UnicodeCollation.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/FatPkg/EnhancedFatDxe/UnicodeCollation.c b/FatPkg/EnhancedFatDxe/UnicodeCollation.c index 4a849af2eb..9e5db7b967 100644 --- a/FatPkg/EnhancedFatDxe/UnicodeCollation.c +++ b/FatPkg/EnhancedFatDxe/UnicodeCollation.c @@ -162,6 +162,12 @@ InitializeUnicodeCollationSupportWithConfig ( /** Initialize Unicode Collation support. + This function searches Initialized Unicode Collation support based on PCDs: + PcdUnicodeCollation2Support and PcdUnicodeCollationSupport. + It first tries to locate Unicode Collation 2 protocol and matches it with current + platform language code. If for any reason the first attempt fails, it then tries to + use Unicode Collation Protocol. + @param AgentHandle The handle used to open Unicode Collation (2) protocol. @retval EFI_SUCCESS The Unicode Collation (2) protocol has been successfully located. @@ -177,10 +183,18 @@ InitializeUnicodeCollationSupport ( EFI_STATUS Status; Status = EFI_UNSUPPORTED; + + // + // First try to use RFC 3066 Unicode Collation 2 Protocol. + // if (FeaturePcdGet (PcdUnicodeCollation2Support)) { Status = InitializeUnicodeCollationSupportWithConfig (AgentHandle, &mRfc3066Lang); } + // + // If the attempt to use Unicode Collation 2 Protocol fails, then we fall back + // on the ISO 639-2 Unicode Collation Protocol. + // if (FeaturePcdGet (PcdUnicodeCollationSupport) && EFI_ERROR (Status)) { Status = InitializeUnicodeCollationSupportWithConfig (AgentHandle, &mIso639Lang); } -- 2.39.2