disable utf-8 escaping in json.stringify by default & add utfEscape argument to json.stringify & update network.post behaviour for pre-serialized data

This commit is contained in:
MihailRis
2025-03-17 00:21:31 +03:00
parent fb4fa2f042
commit a0b0c0a9f0
5 changed files with 33 additions and 16 deletions
+1 -1
View File
@@ -178,7 +178,7 @@ void EngineController::onMissingContent(const std::shared_ptr<ContentReport>& re
if (engine.isHeadless()) {
throw std::runtime_error(
"missing content: " +
json::stringify(create_missing_content_report(report), true)
json::stringify(create_missing_content_report(report), true, " ")
);
} else {
engine.setScreen(std::make_shared<MenuScreen>(engine));
+2 -1
View File
@@ -5,7 +5,8 @@ static int l_json_stringify(lua::State* L) {
auto value = lua::tovalue(L, 1);
bool nice = lua::toboolean(L, 2);
auto string = json::stringify(value, nice, " ");
bool escapeUTF = lua::toboolean(L, 3);
auto string = json::stringify(value, nice, " ", escapeUTF);
return lua::pushstring(L, string);
}
+6 -1
View File
@@ -44,7 +44,12 @@ static int l_post(lua::State* L) {
lua::pushvalue(L, 3);
auto onResponse = lua::create_lambda_nothrow(L);
auto string = json::stringify(data, false);
std::string string;
if (data.isString()) {
string = data.asString();
} else {
string = json::stringify(data, false);
}
engine->getNetwork().post(url, string, [onResponse](std::vector<char> bytes) {
auto buffer = std::make_shared<util::Buffer<ubyte>>(
reinterpret_cast<const ubyte*>(bytes.data()), bytes.size()