rx/StaticString: split to StaticString and StaticCString

This commit is contained in:
DH 2025-10-16 11:33:37 +03:00
parent 2b7d117318
commit 9df852e48b
4 changed files with 223 additions and 25 deletions

View file

@ -109,7 +109,7 @@ public:
return {};
}
std::tuple<kmap<kstring, rx::StaticString<128>> &, std::unique_lock<rx::shared_mutex>>
std::tuple<kmap<kstring, rx::StaticString<127>> &, std::unique_lock<rx::shared_mutex>>
getKernelEnv() {
std::unique_lock lock(m_kenv_mtx);
return {m_kenv, std::move(lock)};
@ -171,7 +171,7 @@ private:
kmap<kstring, rx::Ref<IpmiServer>> mIpmiServers;
rx::shared_mutex m_kenv_mtx;
kmap<kstring, rx::StaticString<128>> m_kenv; // max size: 127 + '\0'
kmap<kstring, rx::StaticString<127>> m_kenv;
};
extern GlobalObjectRef<KernelContext> g_context;

View file

@ -36,7 +36,7 @@ struct Thread final {
ptr<void> stackEnd;
uint64_t fsBase{};
uint64_t gsBase{};
rx::StaticString<32> name;
rx::StaticString<31> name;
cpuset affinity{~0u};
SigSet sigMask = {0x7fff'ffff, ~0u, ~0u, ~0u};

View file

@ -66,7 +66,7 @@ orbis::SysResult orbis::sys_kenv(Thread *thread, sint what,
}
auto &_value_buf = kenv[kstring(_name)];
ORBIS_RET_ON_ERROR(
ureadString(_value_buf.data(), _value_buf.max_size() + 1, value));
ureadString(_value_buf.data(), _value_buf.max_size(), value));
break;
}
case kenv_unset: {