diff options
| author | 2024-01-09 03:24:08 -0600 | |
|---|---|---|
| committer | 2024-01-09 03:24:08 -0600 | |
| commit | 1acaa4335d0893e691fef6ef59580202e4052ecf (patch) | |
| tree | 0c0e5b52b52d25303b023fb0441b9fab7c637953 /src/launcherutil.c | |
| parent | WIP: JRE stuff (diff) | |
finish the runtime stuff (buggy maybe)
Diffstat (limited to 'src/launcherutil.c')
| -rw-r--r-- | src/launcherutil.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/launcherutil.c b/src/launcherutil.c index b292df9..070290d 100644 --- a/src/launcherutil.c +++ b/src/launcherutil.c @@ -66,6 +66,27 @@ char *l2_launcher_sprintf_alloc(const char *fmt, ...) return ret; } +char *l2_launcher_sprintf_resize(char **buf, size_t *len, const char *fmt, ...) +{ + va_list pva; + + va_start(pva, fmt); + size_t needlen = vsnprintf(NULL, 0, fmt, pva); + va_end(pva); + + if (needlen + 1 > *len) { + char *temp = realloc(*buf, needlen + 1); + if (!temp) return NULL; + *buf = temp; + *len = needlen + 1; + } + + va_start(pva, fmt); + vsnprintf(*buf, *len, fmt, pva); + va_end(pva); + return *buf; +} + char *l2_launcher_find_config_path(void) { /* check for $L2SU_CONFIG */ |
