/ Check-in [18d61c8e]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Improve performance of sqlite3VtabImportErrmsg().
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1:18d61c8e40ed1466b6a3a2f53bf0eeb09687c20e
User & Date: dan 2016-01-20 08:47:55
Context
2016-01-20
14:22
Case folding in the LIKE operator should look at all bits of the character, not just the lower 8 bits. Fix for ticket [80369eddd5c94]. This is a back-out of check-in [0a99a8c4facf] with a testcase added. check-in: 204432ee user: drh tags: trunk
12:18
Merge recent enhancements from trunk. check-in: 5520f600 user: drh tags: begin-concurrent
11:40
Merge all recent enhancements from trunk. check-in: 3ed49691 user: drh tags: apple-osx
11:33
Merge recent enhancements from trunk. check-in: 327af5f6 user: drh tags: sessions
08:47
Improve performance of sqlite3VtabImportErrmsg(). check-in: 18d61c8e user: dan tags: trunk
03:36
Performance improvement in sqlite3DbMallocRaw(). check-in: ff8eadbe user: drh tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to src/vdbeaux.c.

4441
4442
4443
4444
4445
4446
4447

4448
4449
4450
4451
4452
4453

4454
#ifndef SQLITE_OMIT_VIRTUALTABLE
/*
** Transfer error message text from an sqlite3_vtab.zErrMsg (text stored
** in memory obtained from sqlite3_malloc) into a Vdbe.zErrMsg (text stored
** in memory obtained from sqlite3DbMalloc).
*/
void sqlite3VtabImportErrmsg(Vdbe *p, sqlite3_vtab *pVtab){

  sqlite3 *db = p->db;
  sqlite3DbFree(db, p->zErrMsg);
  p->zErrMsg = sqlite3DbStrDup(db, pVtab->zErrMsg);
  sqlite3_free(pVtab->zErrMsg);
  pVtab->zErrMsg = 0;
}

#endif /* SQLITE_OMIT_VIRTUALTABLE */







>
|
|
|
|
|
|
>

4441
4442
4443
4444
4445
4446
4447
4448
4449
4450
4451
4452
4453
4454
4455
4456
#ifndef SQLITE_OMIT_VIRTUALTABLE
/*
** Transfer error message text from an sqlite3_vtab.zErrMsg (text stored
** in memory obtained from sqlite3_malloc) into a Vdbe.zErrMsg (text stored
** in memory obtained from sqlite3DbMalloc).
*/
void sqlite3VtabImportErrmsg(Vdbe *p, sqlite3_vtab *pVtab){
  if( pVtab->zErrMsg ){
    sqlite3 *db = p->db;
    sqlite3DbFree(db, p->zErrMsg);
    p->zErrMsg = sqlite3DbStrDup(db, pVtab->zErrMsg);
    sqlite3_free(pVtab->zErrMsg);
    pVtab->zErrMsg = 0;
  }
}
#endif /* SQLITE_OMIT_VIRTUALTABLE */