فهرست منبع

fix fallback charset handling

test if the fallback is set, do not rely on error code
Arne Hormann 12 سال پیش
والد
کامیت
162e0fbe06
1فایلهای تغییر یافته به همراه7 افزوده شده و 2 حذف شده
  1. 7 2
      connection.go

+ 7 - 2
connection.go

@@ -48,9 +48,14 @@ func (mc *mysqlConn) handleParams() (err error) {
 		case "charset":
 			charsets := strings.Split(val, ",")
 			for _, charset := range charsets {
+				// ignore errors here - a charset may not exist
 				err = mc.exec("SET NAMES " + charset)
-				if err != nil {
-					return
+				if err == nil {
+					var value []byte
+					value, err = mc.getSystemVar("character_set_connection")
+					if string(value) == charset {
+						break
+					}
 				}
 			}