Skip to content

Commit 162e0fb

Browse files
committed
fix fallback charset handling
test if the fallback is set, do not rely on error code
1 parent 43548cc commit 162e0fb

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

connection.go

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,14 @@ func (mc *mysqlConn) handleParams() (err error) {
4848
case "charset":
4949
charsets := strings.Split(val, ",")
5050
for _, charset := range charsets {
51+
// ignore errors here - a charset may not exist
5152
err = mc.exec("SET NAMES " + charset)
52-
if err != nil {
53-
return
53+
if err == nil {
54+
var value []byte
55+
value, err = mc.getSystemVar("character_set_connection")
56+
if string(value) == charset {
57+
break
58+
}
5459
}
5560
}
5661

0 commit comments

Comments
 (0)