summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Daniel Lim Wee Soong2018-04-03 02:49:58 +0800
committerGravatar Daniel Lim Wee Soong2018-04-03 02:49:58 +0800
commitc9845c486e91912ae0d09dce8afb16880f2f4cba (patch)
tree3ad20ad580d2c9b6d8628df9b7ce31c0bd4ec48f
parentcommon: fix swap functions on Bitrig and OpenBSD (diff)
downloadyuzu-c9845c486e91912ae0d09dce8afb16880f2f4cba.tar.gz
yuzu-c9845c486e91912ae0d09dce8afb16880f2f4cba.tar.xz
yuzu-c9845c486e91912ae0d09dce8afb16880f2f4cba.zip
externals: Update fmt to 4d35f94
Versions prior to this didn't compile on OpenBSD due to unconditional use of the non-standard strtod_l() function. The fmt::MemoryWriter API has been removed in the intervening versions, so replace its use with fmt::memory_buffer and fmt::format_to. The library also no longer provides the fmt::fmt ALIAS, so define it in externals/CMakeLists.txt.
-rw-r--r--externals/CMakeLists.txt1
m---------externals/fmt0
-rw-r--r--src/core/hle/service/service.cpp12
3 files changed, 7 insertions, 6 deletions
diff --git a/externals/CMakeLists.txt b/externals/CMakeLists.txt
index ec3c70779..d2b0652a5 100644
--- a/externals/CMakeLists.txt
+++ b/externals/CMakeLists.txt
@@ -17,6 +17,7 @@ endif()
17 17
18# libfmt 18# libfmt
19add_subdirectory(fmt) 19add_subdirectory(fmt)
20add_library(fmt::fmt ALIAS fmt)
20 21
21# getopt 22# getopt
22if (MSVC) 23if (MSVC)
diff --git a/externals/fmt b/externals/fmt
Subproject ac5484c4e7365b59d8c7e14db6778de26635e42 Subproject 4d35f94133ed14794e53c9f8627d047b408e0dc
diff --git a/src/core/hle/service/service.cpp b/src/core/hle/service/service.cpp
index 8011d0d71..c5490c1ae 100644
--- a/src/core/hle/service/service.cpp
+++ b/src/core/hle/service/service.cpp
@@ -112,15 +112,15 @@ void ServiceFrameworkBase::ReportUnimplementedFunction(Kernel::HLERequestContext
112 auto cmd_buf = ctx.CommandBuffer(); 112 auto cmd_buf = ctx.CommandBuffer();
113 std::string function_name = info == nullptr ? fmt::format("{}", ctx.GetCommand()) : info->name; 113 std::string function_name = info == nullptr ? fmt::format("{}", ctx.GetCommand()) : info->name;
114 114
115 fmt::MemoryWriter w; 115 fmt::memory_buffer buf;
116 w.write("function '{}': port='{}' cmd_buf={{[0]={:#x}", function_name, service_name, 116 fmt::format_to(buf, "function '{}': port='{}' cmd_buf={{[0]={:#x}", function_name, service_name,
117 cmd_buf[0]); 117 cmd_buf[0]);
118 for (int i = 1; i <= 8; ++i) { 118 for (int i = 1; i <= 8; ++i) {
119 w.write(", [{}]={:#x}", i, cmd_buf[i]); 119 fmt::format_to(buf, ", [{}]={:#x}", i, cmd_buf[i]);
120 } 120 }
121 w << '}'; 121 buf.push_back('}');
122 122
123 LOG_ERROR(Service, "unknown / unimplemented %s", w.c_str()); 123 LOG_ERROR(Service, "unknown / unimplemented %s", fmt::to_string(buf).c_str());
124 UNIMPLEMENTED(); 124 UNIMPLEMENTED();
125} 125}
126 126