Skip to content

Commit 154b7cc

Browse files
committed
fix packet appending
#91
1 parent 601b401 commit 154b7cc

File tree

2 files changed

+11
-5
lines changed

2 files changed

+11
-5
lines changed

driver_test.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -595,7 +595,7 @@ func TestLongData(t *testing.T) {
595595

596596
dbt.mustExec("CREATE TABLE test (value LONGBLOB)")
597597

598-
in := strings.Repeat(`0`, maxAllowedPacketSize+1)
598+
in := strings.Repeat(`a`, maxAllowedPacketSize+1)
599599
var out string
600600
var rows *sql.Rows
601601

@@ -631,7 +631,11 @@ func TestLongData(t *testing.T) {
631631
dbt.Error("LONGBLOB: unexpexted row")
632632
}
633633
} else {
634-
dbt.Fatalf("LONGBLOB: no data")
634+
if err = rows.Err(); err != nil {
635+
dbt.Fatalf("LONGBLOB: no data (err: %s)", err.Error())
636+
} else {
637+
dbt.Fatal("LONGBLOB: no data (err: <nil>)")
638+
}
635639
}
636640
})
637641
}

packets.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,13 @@ func (mc *mysqlConn) readPacket() (data []byte, err error) {
5757
return data, nil
5858
}
5959

60+
var buf []byte
61+
buf = append(buf, data...)
62+
6063
// More data
61-
var data2 []byte
62-
data2, err = mc.readPacket()
64+
data, err = mc.readPacket()
6365
if err == nil {
64-
return append(data, data2...), nil
66+
return append(buf, data...), nil
6567
}
6668
}
6769
errLog.Print(err.Error())

0 commit comments

Comments
 (0)