@@ -747,7 +747,7 @@ type bindArg struct {
747
747
v driver.Value
748
748
}
749
749
750
- var placeHolder byte = 0
750
+ var placeHolder = [] byte { 0 }
751
751
752
752
func (s * SQLiteStmt ) bind (args []namedValue ) error {
753
753
rv := C .sqlite3_reset (s .s )
@@ -770,7 +770,7 @@ func (s *SQLiteStmt) bind(args []namedValue) error {
770
770
rv = C .sqlite3_bind_null (s .s , n )
771
771
case string :
772
772
if len (v ) == 0 {
773
- rv = C ._sqlite3_bind_text (s .s , n , (* C .char )(unsafe .Pointer (& placeHolder )), C .int (0 ))
773
+ rv = C ._sqlite3_bind_text (s .s , n , (* C .char )(unsafe .Pointer (& placeHolder [ 0 ] )), C .int (0 ))
774
774
} else {
775
775
b := []byte (v )
776
776
rv = C ._sqlite3_bind_text (s .s , n , (* C .char )(unsafe .Pointer (& b [0 ])), C .int (len (b )))
@@ -786,13 +786,10 @@ func (s *SQLiteStmt) bind(args []namedValue) error {
786
786
case float64 :
787
787
rv = C .sqlite3_bind_double (s .s , n , C .double (v ))
788
788
case []byte :
789
- var ptr * byte
790
789
if len (v ) == 0 {
791
- ptr = & placeHolder
792
- } else {
793
- ptr = & v [0 ]
790
+ v = placeHolder
794
791
}
795
- rv = C ._sqlite3_bind_blob (s .s , n , unsafe .Pointer (ptr ), C .int (len (v )))
792
+ rv = C ._sqlite3_bind_blob (s .s , n , unsafe .Pointer (& v [ 0 ] ), C .int (len (v )))
796
793
case time.Time :
797
794
b := []byte (v .Format (SQLiteTimestampFormats [0 ]))
798
795
rv = C ._sqlite3_bind_text (s .s , n , (* C .char )(unsafe .Pointer (& b [0 ])), C .int (len (b )))
0 commit comments