summaryrefslogtreecommitdiff
path: root/src/libultra_boot_O2/sprintf.c
blob: 2ff0b33e060784409cdfd4bffe59303c30d9a9cc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <global.h>

char* proutSprintf(char* dst, const char* fmt, size_t size) {
    return (char*)memcpy(dst, fmt, size) + size;
}

s32 vsprintf(char* dst, const char* fmt, va_list args) {
    s32 ret = _Printf(&proutSprintf, dst, fmt, args);
    if (ret > -1) {
        dst[ret] = 0;
    }
    return ret;
}

s32 sprintf(char* dst, const char* fmt, ...) {
    s32 ret;
    va_list args;
    va_start(args, fmt);

    ret = _Printf(&proutSprintf, dst, fmt, args);
    if (ret > -1) {
        dst[ret] = 0;
    }
    return ret;
}