File tree 1 file changed +26
-26
lines changed
1 file changed +26
-26
lines changed Original file line number Diff line number Diff line change @@ -761,40 +761,40 @@ func (rows *textRows) readRow(dest []driver.Value) error {
761
761
}
762
762
763
763
// RowSet Packet
764
- var n int
765
- var isNull bool
766
- pos := 0
764
+ var (
765
+ n int
766
+ isNull bool
767
+ pos int = 0
768
+ )
767
769
768
770
for i := range dest {
769
771
// Read bytes and convert to string
770
772
dest [i ], isNull , n , err = readLengthEncodedString (data [pos :])
771
773
pos += n
772
- if err == nil {
773
- if ! isNull {
774
- if ! mc .parseTime {
775
- continue
776
- } else {
777
- switch rows .rs .columns [i ].fieldType {
778
- case fieldTypeTimestamp , fieldTypeDateTime ,
779
- fieldTypeDate , fieldTypeNewDate :
780
- dest [i ], err = parseDateTime (
781
- dest [i ].([]byte ),
782
- mc .cfg .Loc ,
783
- )
784
- if err == nil {
785
- continue
786
- }
787
- default :
788
- continue
789
- }
790
- }
791
774
792
- } else {
793
- dest [i ] = nil
794
- continue
775
+ if err != nil {
776
+ return err
777
+ }
778
+
779
+ if isNull {
780
+ dest [i ] = nil
781
+ continue
782
+ }
783
+
784
+ if ! mc .parseTime {
785
+ continue
786
+ }
787
+
788
+ // Parse time field
789
+ switch rows .rs .columns [i ].fieldType {
790
+ case fieldTypeTimestamp ,
791
+ fieldTypeDateTime ,
792
+ fieldTypeDate ,
793
+ fieldTypeNewDate :
794
+ if dest [i ], err = parseDateTime (dest [i ].([]byte ), mc .cfg .Loc ); err != nil {
795
+ return err
795
796
}
796
797
}
797
- return err // err != nil
798
798
}
799
799
800
800
return nil
You can’t perform that action at this time.
0 commit comments