summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/src/AsciiUtils.cc
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2025-09-28 14:18:55 +0200
committerGitHub <noreply@github.com>2025-09-28 14:18:55 +0200
commit643fd1890646442e97f61c323bb1342ccae8c46b (patch)
tree1dccc97ea6d52012d682f664995959fe7db9ddd1 /dev/kernel/src/AsciiUtils.cc
parentdfad97487744840f26ea8046d1a011688bd9edd0 (diff)
parent2d673e164b98db5eb08d4c41c6225fbe73ee82d7 (diff)
Merge pull request #66 from 0xf00sec/patch-2
feat: `T.Value` (ErrorOr.h)
Diffstat (limited to 'dev/kernel/src/AsciiUtils.cc')
-rw-r--r--dev/kernel/src/AsciiUtils.cc15
1 files changed, 10 insertions, 5 deletions
diff --git a/dev/kernel/src/AsciiUtils.cc b/dev/kernel/src/AsciiUtils.cc
index 24e4e220..cca3a368 100644
--- a/dev/kernel/src/AsciiUtils.cc
+++ b/dev/kernel/src/AsciiUtils.cc
@@ -8,7 +8,7 @@
namespace Kernel {
-Int rt_copy_memory_safe(const voidPtr src, voidPtr dst, Size len, Size dst_size);
+Int32 rt_copy_memory_safe(const voidPtr src, voidPtr dst, Size len, Size dst_size);
voidPtr rt_set_memory_safe(voidPtr dst, UInt32 value, Size len, Size dst_size);
Int32 rt_string_cmp(const Char* src, const Char* cmp, Size size) {
@@ -45,7 +45,7 @@ const Char* rt_alloc_string(const Char* src) {
return buffer;
}
-Int rt_copy_memory_safe(const voidPtr src, voidPtr dst, Size len, Size dst_size) {
+Int32 rt_copy_memory_safe(const voidPtr src, voidPtr dst, Size len, Size dst_size) {
if (!src || !dst || len > dst_size) {
if (dst && dst_size) {
rt_set_memory_safe(dst, 0, dst_size, dst_size);
@@ -85,7 +85,7 @@ rt_set_memory(voidPtr src, UInt32 value, Size len) {
#ifdef __NE_ENFORCE_DEPRECATED_WARNINGS
[[deprecated("Use rt_copy_memory_safe instead")]]
#endif
-Int rt_copy_memory(const voidPtr src, voidPtr dst, Size len) {
+Int32 rt_copy_memory(const voidPtr src, voidPtr dst, Size len) {
if (!src || !dst) return -1;
auto s = reinterpret_cast<const UInt8*>(src);
auto d = reinterpret_cast<UInt8*>(dst);
@@ -134,11 +134,15 @@ Bool rt_to_string(Char* str, UInt64 value, Int32 base) {
str[j] = str[i - j - 1];
str[i - j - 1] = tmp;
}
+
+ return YES;
#endif
- return true;
+ return NO;
}
VoidPtr rt_string_in_string(const Char* haystack, const Char* needle) {
+ if (!haystack || !needle) return nullptr;
+
SizeT needle_len = rt_string_len(needle);
SizeT hay_len = rt_string_len(haystack);
@@ -152,6 +156,7 @@ VoidPtr rt_string_in_string(const Char* haystack, const Char* needle) {
}
Char* rt_string_has_char(Char* str, Char ch) {
+ if (!str) return nullptr;
while (*str && *str != ch) ++str;
return (*str == ch) ? str : nullptr;
}
@@ -166,7 +171,7 @@ EXTERN_C void* memcpy(void* dst, const void* src, long long unsigned int len) {
return dst;
}
-EXTERN_C Kernel::Int32 strcmp(const char* a, const char* b) {
+EXTERN_C Int32 strcmp(const char* a, const char* b) {
return Kernel::rt_string_cmp(a, b, rt_string_len(a));
}