From d13cf462b410f07918ef2baeebfb60d8e6d606ff Mon Sep 17 00:00:00 2001 From: cxl Date: Fri, 13 Apr 2018 12:18:48 +0000 Subject: [PATCH] Core: FormatIntAlpha fixed (thanks omari) git-svn-id: svn://ultimatepp.org/upp/trunk@11889 f0d560ea-af0d-0410-9eb7-867de7ffcac7 --- uppsrc/Core/Format.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/uppsrc/Core/Format.cpp b/uppsrc/Core/Format.cpp index f2aa3d6b9..6432e2bbf 100644 --- a/uppsrc/Core/Format.cpp +++ b/uppsrc/Core/Format.cpp @@ -92,14 +92,12 @@ String FormatIntAlpha(int i, bool upper) out << '-'; i = -i; } - char temp[10], *p = temp; - i--; - char start = (upper ? 'A' : 'a'); + char temp[10], *p = temp + 10; + const char *itoc = upper ? "ZABCDEFGHIJKLMNOPQRSTUVWXYZ" : "zabcdefghijklmnopqrstuvwxyz"; do - *p++ = start + (i % 26); + *--p = itoc[i-- % 26]; while(i /= 26); - while(p > temp) - out << *--p; + out.Cat(p, temp + 10); return out; }