Skip to content

Commit 6ac1d3a

Browse files
Improve implementation of function VmaStringBuilder::AddNumber
1 parent 470399a commit 6ac1d3a

1 file changed

Lines changed: 18 additions & 4 deletions

File tree

src/vk_mem_alloc.h

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7054,15 +7054,29 @@ void VmaStringBuilder::Add(const char* pStr)
70547054
void VmaStringBuilder::AddNumber(uint32_t num)
70557055
{
70567056
char buf[11];
7057-
VmaUint32ToStr(buf, sizeof(buf), num);
7058-
Add(buf);
7057+
buf[10] = '\0';
7058+
char *p = &buf[10];
7059+
do
7060+
{
7061+
*--p = '0' + (num % 10);
7062+
num /= 10;
7063+
}
7064+
while(num);
7065+
Add(p);
70597066
}
70607067

70617068
void VmaStringBuilder::AddNumber(uint64_t num)
70627069
{
70637070
char buf[21];
7064-
VmaUint64ToStr(buf, sizeof(buf), num);
7065-
Add(buf);
7071+
buf[20] = '\0';
7072+
char *p = &buf[20];
7073+
do
7074+
{
7075+
*--p = '0' + (num % 10);
7076+
num /= 10;
7077+
}
7078+
while(num);
7079+
Add(p);
70667080
}
70677081

70687082
void VmaStringBuilder::AddPointer(const void* ptr)

0 commit comments

Comments
 (0)