@@ -14,30 +14,38 @@ type PreparedStmt struct {
1414 columnFields []* mysql.Field
1515}
1616
17- func (s * PreparedStmt ) GetParamFields () []* mysql.Field {
17+ func (s * PreparedStmt ) GetParamFields () ( []* mysql.Field , error ) {
1818 if s .RawParamFields == nil {
19- return nil
19+ return nil , nil
2020 }
2121 if s .paramFields == nil {
22- s . paramFields = make ([]* mysql.Field , len (s .RawParamFields ))
22+ fields : = make ([]* mysql.Field , len (s .RawParamFields ))
2323 for i , raw := range s .RawParamFields {
24- s .paramFields [i ] = & mysql.Field {}
25- _ = s .paramFields [i ].Parse (raw )
24+ field := & mysql.Field {}
25+ if err := field .Parse (raw ); err != nil {
26+ return nil , err
27+ }
28+ fields [i ] = field
2629 }
30+ s .paramFields = fields
2731 }
28- return s .paramFields
32+ return s .paramFields , nil
2933}
3034
31- func (s * PreparedStmt ) GetColumnFields () []* mysql.Field {
35+ func (s * PreparedStmt ) GetColumnFields () ( []* mysql.Field , error ) {
3236 if s .RawColumnFields == nil {
33- return nil
37+ return nil , nil
3438 }
3539 if s .columnFields == nil {
36- s . columnFields = make ([]* mysql.Field , len (s .RawColumnFields ))
40+ fields : = make ([]* mysql.Field , len (s .RawColumnFields ))
3741 for i , raw := range s .RawColumnFields {
38- s .columnFields [i ] = & mysql.Field {}
39- _ = s .columnFields [i ].Parse (raw )
42+ field := & mysql.Field {}
43+ if err := field .Parse (raw ); err != nil {
44+ return nil , err
45+ }
46+ fields [i ] = field
4047 }
48+ s .columnFields = fields
4149 }
42- return s .columnFields
50+ return s .columnFields , nil
4351}
0 commit comments