diff --git a/driver/driver.go b/driver/driver.go index 150a01a..eee3b29 100644 --- a/driver/driver.go +++ b/driver/driver.go @@ -665,7 +665,7 @@ func (r *rows) Next(dest []driver.Value) error { } data := unsafe.Slice((*any)(unsafe.SliceData(dest)), len(dest)) - err := r.Stmt.Columns(data) + err := r.Stmt.Columns(data...) for i := range dest { if t, ok := r.decodeTime(i, dest[i]); ok { dest[i] = t diff --git a/stmt.go b/stmt.go index 139dd35..dc83919 100644 --- a/stmt.go +++ b/stmt.go @@ -637,7 +637,7 @@ func (s *Stmt) ColumnValue(col int) Value { // [TEXT] as string, and [BLOB] as []byte. // Any []byte are owned by SQLite and may be invalidated by // subsequent calls to [Stmt] methods. -func (s *Stmt) Columns(dest []any) error { +func (s *Stmt) Columns(dest ...any) error { defer s.c.arena.mark()() count := uint64(len(dest)) typePtr := s.c.arena.new(count)