StdLib: Fix printf issues with floating point and wide character strings. Also resolves a compilation issue with VS2010. See ISSUES.txt items 1, 11.

ISSUES.txt:  Added issue 11, updated status of issue 1.

gdtoa/gdtoaimp.h:  Fix definition of union U.

Locale/_wcstod.h:  Return 0.0 instead of 0 in the "no_convert" case.

Locale/multibyte_Utf8.c:  In wcsrtombs(), if both the destination pointer is NULL and the size, Limit, is 0; return the estimated length of the converted string up to ASCII_STRING_MAX bytes.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by:  daryl.mcdaniel@intel.com
Reviewed-by:    Aniruddha_Herekar@Dell.com


git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@14171 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
darylm503
2013-03-11 18:00:30 +00:00
parent f149129429
commit 05c7d5f615
4 changed files with 70 additions and 63 deletions

View File

@@ -14,6 +14,7 @@
#include <stdlib.h>
#include <wchar.h>
#include <sys/types.h>
#include <limits.h>
typedef int ch_UCS4;
@@ -913,6 +914,9 @@ wcsrtombs(
return (0);
if (Dest == NULL) {
if(MaxBytes <= 0) {
MaxBytes = ASCII_STRING_MAX;
}
NumStored = EstimateWtoM(*Src, MaxBytes, NULL);
}
else {