Hi… I am well aware that this diff view is very suboptimal. It will be fixed when the refactored server comes along!
Use unsafe.SliceData instead of &b[0]
// SPDX-License-Identifier: BSD-2-Clause
// SPDX-FileCopyrightText: Copyright (c) 2025 Runxi Yu <https://runxiyu.org>
package main
import "unsafe"
// stringToBytes converts a string to a byte slice without copying the string.
// Memory is borrowed from the string.
// The resulting byte slice must not be modified in any form.
func stringToBytes(s string) (bytes []byte) {
return unsafe.Slice(unsafe.StringData(s), len(s))
}
// bytesToString converts a byte slice to a string without copying the bytes.
// Memory is borrowed from the byte slice.
// The source byte slice must not be modified.
func bytesToString(b []byte) string {
return unsafe.String(&b[0], len(b))
return unsafe.String(unsafe.SliceData(b), len(b))
}