https://git.reactos.org/?p=reactos.git;a=commitdiff;h=c1fad34755ccf07663f0d…
commit c1fad34755ccf07663f0d962be5f207491eb244a
Author: Kyle Katarn <contact(a)kcsoftwares.com>
AuthorDate: Sun May 10 08:34:35 2020 +0200
Commit: GitHub <noreply(a)github.com>
CommitDate: Sun May 10 08:34:35 2020 +0200
[WINNLS] Fix of GetCurrencyFormatW to handle "32" grouping format (#2719)
---
dll/win32/kernel32/winnls/string/lcformat.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/dll/win32/kernel32/winnls/string/lcformat.c
b/dll/win32/kernel32/winnls/string/lcformat.c
index 441c41b2211..5e5b529df9e 100644
--- a/dll/win32/kernel32/winnls/string/lcformat.c
+++ b/dll/win32/kernel32/winnls/string/lcformat.c
@@ -1762,7 +1762,7 @@ INT WINAPI GetCurrencyFormatW(LCID lcid, DWORD dwFlags,
*szOut-- = *lpszDec--; /* Write decimal separator */
}
- dwGroupCount = lpFormat->Grouping;
+ dwGroupCount = lpFormat->Grouping == 32 ? 3 : lpFormat->Grouping;
/* Write the remaining whole number digits, including grouping chars */
while (szSrc >= lpszValue && *szSrc >= '0' && *szSrc
<= '9')
@@ -1791,6 +1791,8 @@ INT WINAPI GetCurrencyFormatW(LCID lcid, DWORD dwFlags,
*szOut-- = *lpszGrp--; /* Write grouping char */
dwCurrentGroupCount = 0;
+ if (lpFormat->Grouping == 32)
+ dwGroupCount = 2; /* Indic grouping: 3 then 2 */
}
}
if (dwState & NF_ROUND)