File tree Expand file tree Collapse file tree 2 files changed +8
-9
lines changed Expand file tree Collapse file tree 2 files changed +8
-9
lines changed Original file line number Diff line number Diff line change @@ -38,13 +38,12 @@ func encodeConnectionAttributes(textAttributes string) string {
3838
3939 // user-defined connection attributes
4040 for _ , connAttr := range strings .Split (textAttributes , "," ) {
41- attr := strings .SplitN (connAttr , ":" , 2 )
42- if len ( attr ) != 2 {
41+ k , v , found := strings .Cut (connAttr , ":" )
42+ if ! found {
4343 continue
4444 }
45- for _ , v := range attr {
46- connAttrsBuf = appendLengthEncodedString (connAttrsBuf , v )
47- }
45+ connAttrsBuf = appendLengthEncodedString (connAttrsBuf , k )
46+ connAttrsBuf = appendLengthEncodedString (connAttrsBuf , v )
4847 }
4948
5049 return string (connAttrsBuf )
Original file line number Diff line number Diff line change @@ -390,13 +390,13 @@ func ParseDSN(dsn string) (cfg *Config, err error) {
390390// Values must be url.QueryEscape'ed
391391func parseDSNParams (cfg * Config , params string ) (err error ) {
392392 for _ , v := range strings .Split (params , "&" ) {
393- param := strings .SplitN (v , "=" , 2 )
394- if len ( param ) != 2 {
393+ key , value , found := strings .Cut (v , "=" )
394+ if ! found {
395395 continue
396396 }
397397
398398 // cfg params
399- switch value := param [ 1 ]; param [ 0 ] {
399+ switch key {
400400 // Disable INFILE allowlist / enable all files
401401 case "allowAllFiles" :
402402 var isBool bool
@@ -577,7 +577,7 @@ func parseDSNParams(cfg *Config, params string) (err error) {
577577 cfg .Params = make (map [string ]string )
578578 }
579579
580- if cfg .Params [param [ 0 ] ], err = url .QueryUnescape (value ); err != nil {
580+ if cfg .Params [key ], err = url .QueryUnescape (value ); err != nil {
581581 return
582582 }
583583 }
You can’t perform that action at this time.
0 commit comments