File tree 1 file changed +21
-8
lines changed
1 file changed +21
-8
lines changed Original file line number Diff line number Diff line change @@ -59,18 +59,31 @@ func (rows *mysqlRows) Close() error {
59
59
}
60
60
61
61
func (rows * binaryRows ) Next (dest []driver.Value ) error {
62
- if mc := rows .mc ; mc != nil {
63
- if mc .netConn == nil {
64
- return ErrInvalidConn
65
- }
62
+ if rows .mc == nil {
63
+ return io .EOF
64
+ }
66
65
67
- // Fetch next row from stream
68
- if err := rows .readRow (dest ); err != io .EOF {
69
- return err
66
+ mc := rows .mc
67
+ if mc .netConn == nil {
68
+ return ErrInvalidConn
69
+ }
70
+
71
+ // Fetch next row from stream
72
+ err := rows .readRow (dest )
73
+ done := false
74
+ if err != nil {
75
+ if err == io .EOF {
76
+ done = true
77
+ }
78
+ if _ , ok := err .(* MySQLError ); ok {
79
+ done = true
70
80
}
81
+ }
82
+ if done {
71
83
rows .mc = nil
72
84
}
73
- return io .EOF
85
+
86
+ return err
74
87
}
75
88
76
89
func (rows * textRows ) Next (dest []driver.Value ) error {
You can’t perform that action at this time.
0 commit comments