diff options
| author | Brad Fitzpatrick <bradfitz@golang.org> | 2012-02-06 10:06:22 -0800 |
|---|---|---|
| committer | Brad Fitzpatrick <bradfitz@golang.org> | 2012-02-06 10:06:22 -0800 |
| commit | 9c060b8d60f14d930e5eadd7c9968ee2ba4f4131 (patch) | |
| tree | 64c82ef25c9a16460d64a64f60d835dbcff93044 /src/pkg/database/sql/convert.go | |
| parent | 6392b43a1583f5ccf5a3f7c38f096e8dd5403b0d (diff) | |
| download | go-9c060b8d60f14d930e5eadd7c9968ee2ba4f4131.tar.xz | |
database/sql: permit scanning into interface{}
See thread http://goo.gl/7zzzU for background.
R=rsc
CC=golang-dev
https://golang.org/cl/5624051
Diffstat (limited to 'src/pkg/database/sql/convert.go')
| -rw-r--r-- | src/pkg/database/sql/convert.go | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/pkg/database/sql/convert.go b/src/pkg/database/sql/convert.go index e80420e5bb..4924ac14e4 100644 --- a/src/pkg/database/sql/convert.go +++ b/src/pkg/database/sql/convert.go @@ -49,6 +49,11 @@ func convertAssign(dest, src interface{}) error { case *string: *d = string(s) return nil + case *interface{}: + bcopy := make([]byte, len(s)) + copy(bcopy, s) + *d = bcopy + return nil case *[]byte: *d = s return nil @@ -80,6 +85,9 @@ func convertAssign(dest, src interface{}) error { *d = bv.(bool) } return err + case *interface{}: + *d = src + return nil } if scanner, ok := dest.(ScannerInto); ok { |
