To me it seems like that string is very tightly coupled with the actual pointer 
being bound.
I think it's a good idea, in case you cannot make it a literal or static, to 
keep it with
an object whose pointer you bind.


> > 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  
> -- 
> E-Mail privat:  ulrich.te...@gmx.de
> World Wide Web: http://www.telle-online.de
> 
> 
> _______________________________________________
> sqlite-users mailing list
> 
sqlite-users@mailinglists.sqlite.orghttp://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to