Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Fail a schema parse if a virtual table or view has a positive integer rootpage. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
02656760406add06303afc94eaf9f2be |
User & Date: | drh 2021-10-11 15:54:05.911 |
Context
2021-10-12
| ||
02:17 | Fix harmless compiler warnings in the debug build for MSVC. (check-in: 1ceb73f316 user: mistachkin tags: trunk) | |
2021-10-11
| ||
15:54 | Fail a schema parse if a virtual table or view has a positive integer rootpage. (check-in: 0265676040 user: drh tags: trunk) | |
15:21 | Use the IsOrdinaryTable() macro, not a test of tnum, to distinguish tables from views and virtual tables. (check-in: 6189b7809d user: drh tags: trunk) | |
Changes
Changes to src/build.c.
︙ | ︙ | |||
2582 2583 2584 2585 2586 2587 2588 | ** for the table from the db->init.newTnum field. (The page number ** should have been put there by the sqliteOpenCb routine.) ** ** If the root page number is 1, that means this is the sqlite_schema ** table itself. So mark it read-only. */ if( db->init.busy ){ | | | 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 | ** for the table from the db->init.newTnum field. (The page number ** should have been put there by the sqliteOpenCb routine.) ** ** If the root page number is 1, that means this is the sqlite_schema ** table itself. So mark it read-only. */ if( db->init.busy ){ if( pSelect || (!IsOrdinaryTable(p) && db->init.newTnum) ){ sqlite3ErrorMsg(pParse, ""); return; } p->tnum = db->init.newTnum; if( p->tnum==1 ) p->tabFlags |= TF_Readonly; } |
︙ | ︙ |