SQLite

Check-in [c33c02d606]
Login

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

Overview
Comment:Return SQLITE_BUSY if the database is locked reading the schema within sqlite_prepare(). Ticket #1106. (CVS 2322)
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: c33c02d6069b90f295698a9f35f4aa99dee5f5e9
User & Date: danielk1977 2005-02-09 07:05:46.000
Context
2005-02-12
00:19
Fix a problem with VACUUM that can lead to database corruption. (CVS 2323) (check-in: 63894baf1b user: drh tags: trunk)
2005-02-09
07:05
Return SQLITE_BUSY if the database is locked reading the schema within sqlite_prepare(). Ticket #1106. (CVS 2322) (check-in: c33c02d606 user: danielk1977 tags: trunk)
03:20
Add experimental collation_list pragma. (CVS 2321) (check-in: f73a8aa34a user: danielk1977 tags: trunk)
Changes
Unified Diff Ignore Whitespace Patch
Changes to src/build.c.
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
**     CREATE INDEX
**     DROP INDEX
**     creating ID lists
**     BEGIN TRANSACTION
**     COMMIT
**     ROLLBACK
**
** $Id: build.c,v 1.308 2005/02/01 03:46:44 danielk1977 Exp $
*/
#include "sqliteInt.h"
#include <ctype.h>

/*
** This routine is called when a new SQL statement is beginning to
** be parsed.  Initialize the pParse structure as needed.







|







18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
**     CREATE INDEX
**     DROP INDEX
**     creating ID lists
**     BEGIN TRANSACTION
**     COMMIT
**     ROLLBACK
**
** $Id: build.c,v 1.309 2005/02/09 07:05:46 danielk1977 Exp $
*/
#include "sqliteInt.h"
#include <ctype.h>

/*
** This routine is called when a new SQL statement is beginning to
** be parsed.  Initialize the pParse structure as needed.
49
50
51
52
53
54
55

56

57
58
59
60
61
62
63
void sqlite3FinishCoding(Parse *pParse){
  sqlite3 *db;
  Vdbe *v;

  if( sqlite3_malloc_failed ) return;
  if( pParse->nested ) return;
  if( !pParse->pVdbe ){

    pParse->rc = pParse->nErr ? SQLITE_ERROR : SQLITE_DONE;

    return;
  }

  /* Begin by generating some termination code at the end of the
  ** vdbe program
  */
  db = pParse->db;







>
|
>







49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
void sqlite3FinishCoding(Parse *pParse){
  sqlite3 *db;
  Vdbe *v;

  if( sqlite3_malloc_failed ) return;
  if( pParse->nested ) return;
  if( !pParse->pVdbe ){
    if( pParse->rc==SQLITE_OK && pParse->nErr ){
      pParse->rc = SQLITE_ERROR;
    }
    return;
  }

  /* Begin by generating some termination code at the end of the
  ** vdbe program
  */
  db = pParse->db;