diff --git a/CHANGELOG.md b/CHANGELOG.md index 00e23a10ea..c083889b67 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -43,6 +43,7 @@ Every module contains its own CHANGELOG.md. Please refer to the module you are i ### Improvements * (client) [#21436](https://github.com/cosmos/cosmos-sdk/pull/21436) Use `address.Codec` from client.Context in `tx.Sign`. +* (internal) [#21412](https://github.com/cosmos/cosmos-sdk/pull/21412) Using unsafe.String and unsafe.SliceData. ### API Breaking Changes diff --git a/internal/conv/string.go b/internal/conv/string.go index 96d89c3a5f..fa9e507be0 100644 --- a/internal/conv/string.go +++ b/internal/conv/string.go @@ -15,5 +15,5 @@ func UnsafeStrToBytes(s string) []byte { // to be used generally, but for a specific pattern to delete keys // from a map. func UnsafeBytesToStr(b []byte) string { - return *(*string)(unsafe.Pointer(&b)) + return unsafe.String(unsafe.SliceData(b), len(b)) } diff --git a/x/authz/internal/conv/string.go b/x/authz/internal/conv/string.go index 39078bd045..5b76131c88 100644 --- a/x/authz/internal/conv/string.go +++ b/x/authz/internal/conv/string.go @@ -13,5 +13,5 @@ func UnsafeStrToBytes(s string) []byte { // to be used generally, but for a specific pattern to delete keys // from a map. func UnsafeBytesToStr(b []byte) string { - return *(*string)(unsafe.Pointer(&b)) + return unsafe.String(unsafe.SliceData(b), len(b)) } diff --git a/x/nft/internal/conv/string.go b/x/nft/internal/conv/string.go index 96d89c3a5f..fa9e507be0 100644 --- a/x/nft/internal/conv/string.go +++ b/x/nft/internal/conv/string.go @@ -15,5 +15,5 @@ func UnsafeStrToBytes(s string) []byte { // to be used generally, but for a specific pattern to delete keys // from a map. func UnsafeBytesToStr(b []byte) string { - return *(*string)(unsafe.Pointer(&b)) + return unsafe.String(unsafe.SliceData(b), len(b)) }