Skip to content

Commit

Permalink
database: Use bytes.Clone instead of manual copy.
Browse files Browse the repository at this point in the history
bytes.Clone was introduced in go 1.20 and removes the need to manually
copy byte slices.
  • Loading branch information
jholdstock committed Feb 16, 2024
1 parent 6a72321 commit cdd02db
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 6 deletions.
9 changes: 4 additions & 5 deletions database/database.go
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
// Copyright (c) 2020-2023 The Decred developers
// Copyright (c) 2020-2024 The Decred developers
// Use of this source code is governed by an ISC
// license that can be found in the LICENSE file.

package database

import (
"bytes"
"crypto/ed25519"
"crypto/rand"
"fmt"
Expand Down Expand Up @@ -285,8 +286,7 @@ func (vdb *VspDatabase) KeyPair() (ed25519.PrivateKey, ed25519.PublicKey, error)

// Byte slices returned from Bolt are only valid during a transaction.
// Need to make a copy.
seed = make([]byte, len(s))
copy(seed, s)
seed = bytes.Clone(s)

if seed == nil {
// should not happen
Expand Down Expand Up @@ -341,8 +341,7 @@ func (vdb *VspDatabase) CookieSecret() ([]byte, error) {

// Byte slices returned from Bolt are only valid during a transaction.
// Need to make a copy.
cookieSecret = make([]byte, len(cs))
copy(cookieSecret, cs)
cookieSecret = bytes.Clone(cs)

return nil
})
Expand Down
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
module github.com/decred/vspd

go 1.19
go 1.20

require (
decred.org/dcrwallet/v3 v3.1.0
Expand Down

0 comments on commit cdd02db

Please sign in to comment.