Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | In test code, always use sqlite3_free() instead of free() to free error messages returned by sqlite3_exec(). (CVS 3303) |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
6521ee5f320e47f8fbd7d6b23929fab4 |
User & Date: | danielk1977 2006-06-27 07:34:40.000 |
Context
2006-06-27
| ||
11:14 | Move older news items to the oldnews.html page. (CVS 3304) (check-in: 80163ded7d user: drh tags: trunk) | |
07:34 | In test code, always use sqlite3_free() instead of free() to free error messages returned by sqlite3_exec(). (CVS 3303) (check-in: 6521ee5f32 user: danielk1977 tags: trunk) | |
02:36 | Make sure that MATCH terms that a virtual table says should be omitted really are omitted. (CVS 3302) (check-in: 3e1f5567df user: drh tags: trunk) | |
Changes
Changes to src/test1.c.
︙ | ︙ | |||
9 10 11 12 13 14 15 | ** May you share freely, never taking more than you give. ** ************************************************************************* ** Code for testing all sorts of SQLite interfaces. This code ** is not included in the SQLite library. It is used for automated ** testing of the SQLite library. ** | | | 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | ** May you share freely, never taking more than you give. ** ************************************************************************* ** Code for testing all sorts of SQLite interfaces. This code ** is not included in the SQLite library. It is used for automated ** testing of the SQLite library. ** ** $Id: test1.c,v 1.213 2006/06/27 07:34:40 danielk1977 Exp $ */ #include "sqliteInt.h" #include "tcl.h" #include "os.h" #include <stdlib.h> #include <string.h> |
︙ | ︙ | |||
218 219 220 221 222 223 224 | zSql = sqlite3_mprintf(argv[2], argv[3]); rc = sqlite3_exec(db, zSql, exec_printf_cb, &str, &zErr); sqlite3_free(zSql); sprintf(zBuf, "%d", rc); Tcl_AppendElement(interp, zBuf); Tcl_AppendElement(interp, rc==SQLITE_OK ? Tcl_DStringValue(&str) : zErr); Tcl_DStringFree(&str); | | | 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 | zSql = sqlite3_mprintf(argv[2], argv[3]); rc = sqlite3_exec(db, zSql, exec_printf_cb, &str, &zErr); sqlite3_free(zSql); sprintf(zBuf, "%d", rc); Tcl_AppendElement(interp, zBuf); Tcl_AppendElement(interp, rc==SQLITE_OK ? Tcl_DStringValue(&str) : zErr); Tcl_DStringFree(&str); if( zErr ) sqlite3_free(zErr); if( sqlite3TestErrCode(interp, db, rc) ) return TCL_ERROR; return TCL_OK; } /* ** Usage: sqlite3_mprintf_z_test SEPARATOR ARG0 ARG1 ... ** |
︙ | ︙ | |||
313 314 315 316 317 318 319 | for(i=0; i<(nRow+1)*nCol; i++){ Tcl_AppendElement(interp, aResult[i] ? aResult[i] : "NULL"); } }else{ Tcl_AppendElement(interp, zErr); } sqlite3_free_table(aResult); | | | 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 | for(i=0; i<(nRow+1)*nCol; i++){ Tcl_AppendElement(interp, aResult[i] ? aResult[i] : "NULL"); } }else{ Tcl_AppendElement(interp, zErr); } sqlite3_free_table(aResult); if( zErr ) sqlite3_free(zErr); if( sqlite3TestErrCode(interp, db, rc) ) return TCL_ERROR; return TCL_OK; } /* ** Usage: sqlite3_last_insert_rowid DB |
︙ | ︙ |