StdLib: Add multi-byte character support. The normal "narrow" character set is now UTF-8 instead of ASCII.
Add library classes which are required by StdLib, but not commonly defined in Platform DSC files, to StdLib.inc. Modify MB_LEN_MAX to be 4, the maximum length of UTF-8 characters. Adjust size of internal buffers to be multiples of MB_LEN_MAX instead of assuming 1-byte characters. Make the XYoffset object public and move its declaration into EfiSysCall.h. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: daryl.mcdaniel@intel.com Reviewed-by: erik.c.bjorge@intel.com Reviewed-by: lee.g.rosenbaum@intel.com Reviewed-by: leroy.p.leahy@intel.com git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13457 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@ -105,7 +105,7 @@
|
||||
by a three-character attempt at a mnemonic.
|
||||
|
||||
|
||||
Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials are licensed and made available under
|
||||
the terms and conditions of the BSD License that accompanies this distribution.
|
||||
The full text of the license may be found at
|
||||
@ -243,8 +243,8 @@ typedef struct __sFILE {
|
||||
/*@}*/
|
||||
|
||||
/* tricks to meet minimum requirements even when malloc() fails */
|
||||
unsigned char _ubuf[3]; /**< guarantee an ungetc() buffer */
|
||||
unsigned char _nbuf[1]; /**< guarantee a getc() buffer */
|
||||
unsigned char _ubuf[3 * MB_LEN_MAX]; /**< guarantee an ungetc() buffer */
|
||||
unsigned char _nbuf[1 * MB_LEN_MAX]; /**< guarantee a getc() buffer */
|
||||
|
||||
/** separate buffer for fgetln() when line crosses buffer boundary */
|
||||
struct __sbuf _lb; /* buffer for fgetln() */
|
||||
|
Reference in New Issue
Block a user