Is it right to not call the sqlite3_free_table() function if the
returns an error?
Or must I call sqlite3_free_table() in any case?
The documentation says
After the calling function has finished using the result, it should pass
the result data pointer to sqlite3_free_table()
in order to release the memory that was malloc-ed. Because of the way the
malloc() happens, the calling function
must not try to call malloc() directly.
Only sqlite3_free_table() is able to release the memory properly and
and it is not clear (to me) if a call sqlite3_free_table() is required in
case of errors.