mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2025-08-04 08:22:32 +00:00
internal_vprintf was wrong
This commit is contained in:
parent
745cdd89fd
commit
a4a8bf721b
@ -152,35 +152,9 @@ s32 PS4_SYSV_ABI internal_vfwscanf_s() {
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
s32 PS4_SYSV_ABI internal_vprintf(const char* format, va_list args) {
|
||||
// Copy the va_list because vsnprintf consumes it
|
||||
va_list args_copy;
|
||||
va_copy(args_copy, args);
|
||||
|
||||
// Calculate the required buffer size
|
||||
int size = std::vsnprintf(nullptr, 0, format, args_copy);
|
||||
va_end(args_copy);
|
||||
|
||||
if (size < 0) {
|
||||
// Handle vsnprintf error
|
||||
LOG_ERROR(Lib_LibcInternal, "vsnprintf failed to calculate size");
|
||||
return size;
|
||||
}
|
||||
|
||||
// Create a string with the required size
|
||||
std::string buffer(size, '\0');
|
||||
|
||||
// Format the string into the buffer
|
||||
int result =
|
||||
std::vsnprintf(buffer.data(), buffer.size() + 1, format, args); // +1 for null terminator
|
||||
if (result >= 0) {
|
||||
// Log the formatted result
|
||||
LOG_INFO(Lib_LibcInternal, "{}", buffer);
|
||||
} else {
|
||||
LOG_ERROR(Lib_LibcInternal, "vsnprintf failed during formatting");
|
||||
}
|
||||
|
||||
return result;
|
||||
s32 PS4_SYSV_ABI internal_vprintf() {
|
||||
LOG_ERROR(Lib_LibcInternal, "(STUBBED) called");
|
||||
return ORBIS_OK;
|
||||
}
|
||||
|
||||
s32 PS4_SYSV_ABI internal_vprintf_s() {
|
||||
|
Loading…
Reference in New Issue
Block a user