1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-28 16:15:10 +00:00

Kernel: Remove UserOrKernelBuffer::copy_into_string()

All former users of this API have been converted to use KString. :^)
This commit is contained in:
Andreas Kling 2021-09-04 23:48:46 +02:00
parent 211c1c087d
commit 393229e2aa
2 changed files with 2 additions and 17 deletions

View file

@ -1,5 +1,6 @@
/* /*
* Copyright (c) 2020, the SerenityOS developers. * Copyright (c) 2020, the SerenityOS developers.
* Copyright (c) 2020, Andreas Kling <kling@serenityos.org>
* *
* SPDX-License-Identifier: BSD-2-Clause * SPDX-License-Identifier: BSD-2-Clause
*/ */
@ -14,21 +15,6 @@ bool UserOrKernelBuffer::is_kernel_buffer() const
return !Memory::is_user_address(VirtualAddress(m_buffer)); return !Memory::is_user_address(VirtualAddress(m_buffer));
} }
String UserOrKernelBuffer::copy_into_string(size_t size) const
{
if (!m_buffer)
return {};
if (Memory::is_user_address(VirtualAddress(m_buffer))) {
char* buffer;
auto data_copy = StringImpl::create_uninitialized(size, buffer);
if (!copy_from_user(buffer, m_buffer, size))
return {};
return data_copy;
}
return String(ReadonlyBytes { m_buffer, size });
}
KResultOr<NonnullOwnPtr<KString>> UserOrKernelBuffer::try_copy_into_kstring(size_t size) const KResultOr<NonnullOwnPtr<KString>> UserOrKernelBuffer::try_copy_into_kstring(size_t size) const
{ {
if (!m_buffer) if (!m_buffer)

View file

@ -1,12 +1,12 @@
/* /*
* Copyright (c) 2020, the SerenityOS developers. * Copyright (c) 2020, the SerenityOS developers.
* Copyright (c) 2021, Andreas Kling <kling@serenityos.org>
* *
* SPDX-License-Identifier: BSD-2-Clause * SPDX-License-Identifier: BSD-2-Clause
*/ */
#pragma once #pragma once
#include <AK/String.h>
#include <AK/Types.h> #include <AK/Types.h>
#include <AK/Userspace.h> #include <AK/Userspace.h>
#include <Kernel/Memory/MemoryManager.h> #include <Kernel/Memory/MemoryManager.h>
@ -54,7 +54,6 @@ public:
return offset_buffer; return offset_buffer;
} }
[[nodiscard]] String copy_into_string(size_t size) const;
[[nodiscard]] KResultOr<NonnullOwnPtr<KString>> try_copy_into_kstring(size_t) const; [[nodiscard]] KResultOr<NonnullOwnPtr<KString>> try_copy_into_kstring(size_t) const;
[[nodiscard]] bool write(const void* src, size_t offset, size_t len); [[nodiscard]] bool write(const void* src, size_t offset, size_t len);
[[nodiscard]] bool write(const void* src, size_t len) [[nodiscard]] bool write(const void* src, size_t len)