/ Check-in [abc7adfda2]
Login

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

Overview
Comment:Make sure the sqlite3_result_pointer() interface does not leave a VM register in an inconsistent state. Fix for ticket [7486aa54b968e9b5]. Test cases are in TH3.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | branch-3.20
Files: files | file ages | folders
SHA3-256: abc7adfda27b67ef0e3eb4da72811aac7e838cc4bca183007c308dc46362fd1e
User & Date: drh 2017-08-24 14:04:31
Context
2017-08-24
14:08
Increase the version number to 3.20.1. check-in: 70338c7cb1 user: drh tags: branch-3.20
14:04
Make sure the sqlite3_result_pointer() interface does not leave a VM register in an inconsistent state. Fix for ticket [7486aa54b968e9b5]. Test cases are in TH3. check-in: abc7adfda2 user: drh tags: branch-3.20
13:55
Make sure the sqlite3_result_pointer() interface does not leave a VM register in an inconsistent state. Fix for ticket [7486aa54b968e9b5]. Test cases are in TH3. check-in: d2f9230c5c user: drh tags: trunk
2017-08-01
13:24
Version 3.20.0 check-in: 9501e22dfe user: drh tags: release, branch-3.20, version-3.20.0
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to src/vdbeapi.c.

   394    394     sqlite3_context *pCtx,
   395    395     void *pPtr,
   396    396     const char *zPType,
   397    397     void (*xDestructor)(void*)
   398    398   ){
   399    399     Mem *pOut = pCtx->pOut;
   400    400     assert( sqlite3_mutex_held(pOut->db->mutex) );
   401         -  sqlite3VdbeMemSetNull(pOut);
          401  +  sqlite3VdbeMemRelease(pOut);
          402  +  pOut->flags = MEM_Null;
   402    403     sqlite3VdbeMemSetPointer(pOut, pPtr, zPType, xDestructor);
   403    404   }
   404    405   void sqlite3_result_subtype(sqlite3_context *pCtx, unsigned int eSubtype){
   405    406     Mem *pOut = pCtx->pOut;
   406    407     assert( sqlite3_mutex_held(pOut->db->mutex) );
   407    408     pOut->eSubtype = eSubtype & 0xff;
   408    409     pOut->flags |= MEM_Subtype;