Last active
August 29, 2015 14:16
-
-
Save methane/6c6e2db8464c0579a7af to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/packets.go b/packets.go | |
index f39d65c..290a388 100644 | |
--- a/packets.go | |
+++ b/packets.go | |
@@ -603,8 +603,13 @@ func (rows *textRows) readRow(dest []driver.Value) error { | |
// EOF Packet | |
if data[0] == iEOF && len(data) == 5 { | |
+ rows.mc = nil | |
return io.EOF | |
} | |
+ if data[0] == iERR { | |
+ rows.mc = nil | |
+ return mc.handleErrorPacket(data) | |
+ } | |
// RowSet Packet | |
var n int | |
@@ -968,6 +973,7 @@ func (rows *binaryRows) readRow(dest []driver.Value) error { | |
// packet indicator [1 byte] | |
if data[0] != iOK { | |
+ rows.mc = nil | |
// EOF Packet | |
if data[0] == iEOF && len(data) == 5 { | |
return io.EOF | |
diff --git a/rows.go b/rows.go | |
index bb161c8..9d97d6d 100644 | |
--- a/rows.go | |
+++ b/rows.go | |
@@ -72,10 +72,7 @@ func (rows *binaryRows) Next(dest []driver.Value) error { | |
} | |
// Fetch next row from stream | |
- if err := rows.readRow(dest); err != io.EOF { | |
- return err | |
- } | |
- rows.mc = nil | |
+ return rows.readRow(dest) | |
} | |
return io.EOF | |
} | |
@@ -87,10 +84,7 @@ func (rows *textRows) Next(dest []driver.Value) error { | |
} | |
// Fetch next row from stream | |
- if err := rows.readRow(dest); err != io.EOF { | |
- return err | |
- } | |
- rows.mc = nil | |
+ return rows.readRow(dest) | |
} | |
return io.EOF | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment