2
0

Fix encode to json ignoring driver.Valuer

https://github.com/jackc/pgx/issues/1430
This commit is contained in:
Jack Christensen
2022-12-23 13:44:09 -06:00
parent c4ac6d810f
commit e66ad1bcec
3 changed files with 23 additions and 0 deletions
+14
View File
@@ -1,6 +1,7 @@
package pgx
import (
"database/sql/driver"
"fmt"
"github.com/jackc/pgx/v5/internal/anynil"
@@ -181,6 +182,19 @@ func (eqb *ExtendedQueryBuilder) appendParamsForQueryExecModeExec(m *pgtype.Map,
}
}
}
if !ok {
var dv driver.Valuer
if dv, ok = arg.(driver.Valuer); ok {
v, err := dv.Value()
if err != nil {
return err
}
dt, ok = m.TypeForValue(v)
if ok {
arg = v
}
}
}
if !ok {
var str fmt.Stringer
if str, ok = arg.(fmt.Stringer); ok {