Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | The sqlite3_step() routine reports SQLITE_ERROR after a commit failure, not SQLITE_DONE. This fix only effects the legacy sqlite3_prepare() interface. It already worked correctly with sqlite3_prepare_v2(). (CVS 3854) |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
165dc72d7024258e225c8a7d60118071 |
User & Date: | drh 2007-04-18 16:45:24.000 |
Context
2007-04-18
| ||
17:04 | Better handle malloc() failures in the "echo" virtual table test module. (CVS 3855) (check-in: 6881f9212f user: danielk1977 tags: trunk) | |
16:45 | The sqlite3_step() routine reports SQLITE_ERROR after a commit failure, not SQLITE_DONE. This fix only effects the legacy sqlite3_prepare() interface. It already worked correctly with sqlite3_prepare_v2(). (CVS 3854) (check-in: 165dc72d70 user: drh tags: trunk) | |
15:33 | Version 3.3.16 (CVS 3853) (check-in: 8c6b5adb5c user: drh tags: trunk) | |
Changes
Changes to src/vdbe.c.
︙ | ︙ | |||
39 40 41 42 43 44 45 | ** ** Various scripts scan this source file in order to generate HTML ** documentation, headers files, or other derived files. The formatting ** of the code in this file is, therefore, important. See other comments ** in this file for details. If in doubt, do not deviate from existing ** commenting and indentation practices when changing or adding code. ** | | | 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 | ** ** Various scripts scan this source file in order to generate HTML ** documentation, headers files, or other derived files. The formatting ** of the code in this file is, therefore, important. See other comments ** in this file for details. If in doubt, do not deviate from existing ** commenting and indentation practices when changing or adding code. ** ** $Id: vdbe.c,v 1.601 2007/04/18 16:45:24 drh Exp $ */ #include "sqliteInt.h" #include "os.h" #include <ctype.h> #include "vdbeInt.h" /* |
︙ | ︙ | |||
2365 2366 2367 2368 2369 2370 2371 | p->pTos = pTos; p->pc = pc; db->autoCommit = 1-i; p->rc = SQLITE_BUSY; return SQLITE_BUSY; } } | > | > > > | 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 | p->pTos = pTos; p->pc = pc; db->autoCommit = 1-i; p->rc = SQLITE_BUSY; return SQLITE_BUSY; } } if( p->rc==SQLITE_OK ){ return SQLITE_DONE; }else{ return SQLITE_ERROR; } }else{ sqlite3SetString(&p->zErrMsg, (!i)?"cannot start a transaction within a transaction":( (rollback)?"cannot rollback - no transaction is active": "cannot commit - no transaction is active"), (char*)0); rc = SQLITE_ERROR; |
︙ | ︙ |