@@ -622,7 +622,7 @@ func (r *Rows) StructScan(dest interface{}) error {
622622 }
623623
624624 octx := newObjectContext ()
625- err := fieldsByTraversal (octx , v , r .fields , r .values , true )
625+ err := fieldsByTraversal (octx , v , r .fields , r .values )
626626 if err != nil {
627627 return err
628628 }
@@ -784,7 +784,7 @@ func (r *Row) scanAny(dest interface{}, structOnly bool) error {
784784
785785 octx := newObjectContext ()
786786
787- err = fieldsByTraversal (octx , v , fields , values , true )
787+ err = fieldsByTraversal (octx , v , fields , values )
788788 if err != nil {
789789 return err
790790 }
@@ -958,7 +958,7 @@ func scanAll(rows rowsi, dest interface{}, structOnly bool) error {
958958 vp = reflect .New (base )
959959 v = reflect .Indirect (vp )
960960
961- err = fieldsByTraversal (octx , v , fields , values , true )
961+ err = fieldsByTraversal (octx , v , fields , values )
962962 if err != nil {
963963 return err
964964 }
@@ -1024,7 +1024,7 @@ func baseType(t reflect.Type, expected reflect.Kind) (reflect.Type, error) {
10241024// when iterating over many rows. Empty traversals will get an interface pointer.
10251025// Because of the necessity of requesting ptrs or values, it's considered a bit too
10261026// specialized for inclusion in reflectx itself.
1027- func fieldsByTraversal (octx * objectContext , v reflect.Value , traversals [][]int , values []interface {}, ptrs bool ) error {
1027+ func fieldsByTraversal (octx * objectContext , v reflect.Value , traversals [][]int , values []interface {}) error {
10281028 v = reflect .Indirect (v )
10291029 if v .Kind () != reflect .Struct {
10301030 return errors .New ("argument not a struct" )
@@ -1038,11 +1038,7 @@ func fieldsByTraversal(octx *objectContext, v reflect.Value, traversals [][]int,
10381038 continue
10391039 }
10401040 f := octx .FieldForIndexes (traversal )
1041- if ptrs {
1042- values [i ] = f .Addr ().Interface ()
1043- } else {
1044- values [i ] = f .Interface ()
1045- }
1041+ values [i ] = f .Addr ().Interface ()
10461042 }
10471043 return nil
10481044}
0 commit comments