mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 15:48:12 +00:00
Kernel+AK: Eliminate a couple of temporary String allocations
This commit is contained in:
parent
726c023f9e
commit
1d2f78682b
7 changed files with 10 additions and 10 deletions
|
@ -184,7 +184,7 @@ void StringBuilder::append_escaped_for_json(StringView string)
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
if (ch >= 0 && ch <= 0x1f)
|
if (ch >= 0 && ch <= 0x1f)
|
||||||
append(String::formatted("\\u{:04x}", ch));
|
appendff("\\u{:04x}", ch);
|
||||||
else
|
else
|
||||||
append(ch);
|
append(ch);
|
||||||
}
|
}
|
||||||
|
|
|
@ -131,7 +131,7 @@ private:
|
||||||
JsonArraySerializer array { builder };
|
JsonArraySerializer array { builder };
|
||||||
LocalSocket::for_each([&array](auto& socket) {
|
LocalSocket::for_each([&array](auto& socket) {
|
||||||
auto obj = array.add_object();
|
auto obj = array.add_object();
|
||||||
obj.add("path", String(socket.socket_path()));
|
obj.add("path", socket.socket_path());
|
||||||
obj.add("origin_pid", socket.origin_pid().value());
|
obj.add("origin_pid", socket.origin_pid().value());
|
||||||
obj.add("origin_uid", socket.origin_uid().value());
|
obj.add("origin_uid", socket.origin_uid().value());
|
||||||
obj.add("origin_gid", socket.origin_gid().value());
|
obj.add("origin_gid", socket.origin_gid().value());
|
||||||
|
@ -463,7 +463,7 @@ private:
|
||||||
ENUMERATE_PLEDGE_PROMISES
|
ENUMERATE_PLEDGE_PROMISES
|
||||||
#undef __ENUMERATE_PLEDGE_PROMISE
|
#undef __ENUMERATE_PLEDGE_PROMISE
|
||||||
|
|
||||||
process_object.add("pledge", pledge_builder.to_string());
|
process_object.add("pledge", pledge_builder.string_view());
|
||||||
|
|
||||||
switch (process.veil_state()) {
|
switch (process.veil_state()) {
|
||||||
case VeilState::None:
|
case VeilState::None:
|
||||||
|
@ -756,7 +756,7 @@ private:
|
||||||
{
|
{
|
||||||
if (!Process::current().is_superuser())
|
if (!Process::current().is_superuser())
|
||||||
return EPERM;
|
return EPERM;
|
||||||
return builder.append(String::number(kernel_load_base));
|
return builder.appendff("{}", kernel_load_base);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -121,7 +121,7 @@ ErrorOr<void> KBufferBuilder::append_escaped_for_json(StringView string)
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
if (ch >= 0 && ch <= 0x1f)
|
if (ch >= 0 && ch <= 0x1f)
|
||||||
TRY(append(String::formatted("\\u{:04x}", ch)));
|
TRY(appendff("\\u{:04x}", ch));
|
||||||
else
|
else
|
||||||
TRY(append(ch));
|
TRY(append(ch));
|
||||||
}
|
}
|
||||||
|
|
|
@ -497,7 +497,7 @@ ErrorOr<NonnullOwnPtr<KString>> IPv4Socket::pseudo_path(const OpenFileDescriptio
|
||||||
VERIFY_NOT_REACHED();
|
VERIFY_NOT_REACHED();
|
||||||
}
|
}
|
||||||
|
|
||||||
return KString::try_create(builder.to_string());
|
return KString::try_create(builder.string_view());
|
||||||
}
|
}
|
||||||
|
|
||||||
ErrorOr<void> IPv4Socket::setsockopt(int level, int option, Userspace<const void*> user_value, socklen_t user_value_size)
|
ErrorOr<void> IPv4Socket::setsockopt(int level, int option, Userspace<const void*> user_value, socklen_t user_value_size)
|
||||||
|
|
|
@ -378,7 +378,7 @@ ErrorOr<NonnullOwnPtr<KString>> LocalSocket::pseudo_path(const OpenFileDescripti
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return KString::try_create(builder.to_string());
|
return KString::try_create(builder.string_view());
|
||||||
}
|
}
|
||||||
|
|
||||||
ErrorOr<void> LocalSocket::getsockopt(OpenFileDescription& description, int level, int option, Userspace<void*> value, Userspace<socklen_t*> value_size)
|
ErrorOr<void> LocalSocket::getsockopt(OpenFileDescription& description, int level, int option, Userspace<void*> value, Userspace<socklen_t*> value_size)
|
||||||
|
|
|
@ -159,7 +159,7 @@ ErrorOr<void> Process::procfs_get_unveil_stats(KBufferBuilder& builder) const
|
||||||
permissions_builder.append('c');
|
permissions_builder.append('c');
|
||||||
if (unveiled_path.permissions() & UnveilAccess::Browse)
|
if (unveiled_path.permissions() & UnveilAccess::Browse)
|
||||||
permissions_builder.append('b');
|
permissions_builder.append('b');
|
||||||
obj.add("permissions", permissions_builder.to_string());
|
obj.add("permissions", permissions_builder.string_view());
|
||||||
}
|
}
|
||||||
array.finish();
|
array.finish();
|
||||||
return {};
|
return {};
|
||||||
|
@ -255,7 +255,7 @@ ErrorOr<void> Process::procfs_get_virtual_memory_stats(KBufferBuilder& builder)
|
||||||
else
|
else
|
||||||
pagemap_builder.append('P');
|
pagemap_builder.append('P');
|
||||||
}
|
}
|
||||||
region_object.add("pagemap", pagemap_builder.to_string());
|
region_object.add("pagemap", pagemap_builder.string_view());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
array.finish();
|
array.finish();
|
||||||
|
|
|
@ -520,7 +520,7 @@ ErrorOr<FlatPtr> Process::sys$allocate_tls(Userspace<const char*> initial_data,
|
||||||
return EINVAL;
|
return EINVAL;
|
||||||
|
|
||||||
auto range = TRY(address_space().try_allocate_range({}, size));
|
auto range = TRY(address_space().try_allocate_range({}, size));
|
||||||
auto* region = TRY(address_space().allocate_region(range, String("Master TLS"), PROT_READ | PROT_WRITE));
|
auto* region = TRY(address_space().allocate_region(range, "Master TLS"sv, PROT_READ | PROT_WRITE));
|
||||||
|
|
||||||
m_master_tls_region = region->make_weak_ptr();
|
m_master_tls_region = region->make_weak_ptr();
|
||||||
m_master_tls_size = size;
|
m_master_tls_size = size;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue