Hi,
I came across a problem with the new pointer-passing interface, when I
tried to incorporate the carray extension into my wxSQLite3 wrapper for
SQLite3.
In the comment of the sqlite3_bind_pointer() routine I found this note:
The T parameter should be a static string, preferably a string literal.
This comment is a bit misleading, since it doesn't become clear that the
string pointer for T must be valid as long as the associated statement
is active.
In my case this is quite cumbersome, since in my wrapper I have to
extract the value of parameter T from a temporary string object. That
is, shortly after having called sqlite3_bind_pointer the temporary
string goes out of scope. The effect is that later on the function
sqlite3_value_pointer usually can't see the correct type value anymore.
Therefore sqlite3_value_pointer returns a NULL pointer ... and the
carray table is empty.
IMHO it would be better if the function sqlite3_bind_pointer would make
a copy of the type string and would thus be independent of the life span
of the type parameter.
Regards,
Ulrich
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users