mirror of
https://github.com/sqlite/sqlite.git
synced 2025-08-07 02:42:48 +03:00
Do not overwrite small files (less than 1024 bytes) that are not databases.
Ticket #1370. (CVS 2606) FossilOrigin-Name: 7f4302686e55f22b281d98a8a3b89300f4ce4eb6
This commit is contained in:
14
manifest
14
manifest
@@ -1,5 +1,5 @@
|
|||||||
C More\stest\scoverage\simprovements.\s(CVS\s2605)
|
C Do\snot\soverwrite\ssmall\sfiles\s(less\sthan\s1024\sbytes)\sthat\sare\snot\sdatabases.\nTicket\s#1370.\s(CVS\s2606)
|
||||||
D 2005-08-20T13:47:42
|
D 2005-08-21T16:54:25
|
||||||
F Makefile.in b109ddb46a5550d0732dcd6caca01c123f6d5cdd
|
F Makefile.in b109ddb46a5550d0732dcd6caca01c123f6d5cdd
|
||||||
F Makefile.linux-gcc 06be33b2a9ad4f005a5f42b22c4a19dab3cbb5c7
|
F Makefile.linux-gcc 06be33b2a9ad4f005a5f42b22c4a19dab3cbb5c7
|
||||||
F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
|
F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
|
||||||
@@ -56,7 +56,7 @@ F src/os_unix.c 535cd82c2fa0b8c4ae9364edeb1ec5342887417e
|
|||||||
F src/os_unix.h 5768d56d28240d3fe4537fac08cc85e4fb52279e
|
F src/os_unix.h 5768d56d28240d3fe4537fac08cc85e4fb52279e
|
||||||
F src/os_win.c fe7b99cfcfb61d9bf54493ddf5857885a657fb89
|
F src/os_win.c fe7b99cfcfb61d9bf54493ddf5857885a657fb89
|
||||||
F src/os_win.h 41a946bea10f61c158ce8645e7646b29d44f122b
|
F src/os_win.h 41a946bea10f61c158ce8645e7646b29d44f122b
|
||||||
F src/pager.c ee3bbc4cd590a0266c791b4ed537cbd9a9d03566
|
F src/pager.c 4c6c6a553d6d23ff6a3a50df5fe53f730f3e387f
|
||||||
F src/pager.h 0d9153d6269d60d04af3dd84a0cc0a96253cf4a4
|
F src/pager.h 0d9153d6269d60d04af3dd84a0cc0a96253cf4a4
|
||||||
F src/parse.y d57cdd2adc0923762b40314f08683c836a2e0c90
|
F src/parse.y d57cdd2adc0923762b40314f08683c836a2e0c90
|
||||||
F src/pragma.c 69413fbdc0c6aaa493a776ea52c1b3e6cf35dfb2
|
F src/pragma.c 69413fbdc0c6aaa493a776ea52c1b3e6cf35dfb2
|
||||||
@@ -178,7 +178,7 @@ F test/misc1.test 4ca69ca2e2ef33c7a0b0fc8b324111e37a522d29
|
|||||||
F test/misc2.test 5c699af2fede2694736a9f45aea7e2f052686e15
|
F test/misc2.test 5c699af2fede2694736a9f45aea7e2f052686e15
|
||||||
F test/misc3.test 7bd937e2c62bcc6be71939faf068d506467b1e03
|
F test/misc3.test 7bd937e2c62bcc6be71939faf068d506467b1e03
|
||||||
F test/misc4.test edd3e3adf5b6e3b995b29843565ca58dd602f9a7
|
F test/misc4.test edd3e3adf5b6e3b995b29843565ca58dd602f9a7
|
||||||
F test/misc5.test a61df275d21516c87f6bb26f22766fda3b0f44a3
|
F test/misc5.test 0e9f4fd1afd2229437199b58bd4a63527689d304
|
||||||
F test/misuse.test 1c7fee3c4c0cb4008717ecccf5c72281fac0008e
|
F test/misuse.test 1c7fee3c4c0cb4008717ecccf5c72281fac0008e
|
||||||
F test/notnull.test 7a08117a71e74b0321aaa937dbeb41a09d6eb1d0
|
F test/notnull.test 7a08117a71e74b0321aaa937dbeb41a09d6eb1d0
|
||||||
F test/null.test 69c62daf1630bf54c87bbc7ef2e22012e58d6da8
|
F test/null.test 69c62daf1630bf54c87bbc7ef2e22012e58d6da8
|
||||||
@@ -297,7 +297,7 @@ F www/tclsqlite.tcl 3df553505b6efcad08f91e9b975deb2e6c9bb955
|
|||||||
F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
|
F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
|
||||||
F www/version3.tcl a99cf5f6d8bd4d5537584a2b342f0fb9fa601d8b
|
F www/version3.tcl a99cf5f6d8bd4d5537584a2b342f0fb9fa601d8b
|
||||||
F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513
|
F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513
|
||||||
P f786f37a5e31f42aaf81b3ad4a734f12855da69e
|
P e559e810a51427def6928763ae0d6f7347366d04
|
||||||
R 8a15af26b28b220d34fe78d4c401858c
|
R 184bcceb8c1c2233bdc023bc940ab136
|
||||||
U drh
|
U drh
|
||||||
Z 75ad334b79c984175a505eccf09879ca
|
Z f67ee3ee1747fb9c945328153fe78418
|
||||||
|
@@ -1 +1 @@
|
|||||||
e559e810a51427def6928763ae0d6f7347366d04
|
7f4302686e55f22b281d98a8a3b89300f4ce4eb6
|
@@ -18,7 +18,7 @@
|
|||||||
** file simultaneously, or one process from reading the database while
|
** file simultaneously, or one process from reading the database while
|
||||||
** another is writing.
|
** another is writing.
|
||||||
**
|
**
|
||||||
** @(#) $Id: pager.c,v 1.208 2005/07/09 02:16:03 drh Exp $
|
** @(#) $Id: pager.c,v 1.209 2005/08/21 16:54:25 drh Exp $
|
||||||
*/
|
*/
|
||||||
#ifndef SQLITE_OMIT_DISKIO
|
#ifndef SQLITE_OMIT_DISKIO
|
||||||
#include "sqliteInt.h"
|
#include "sqliteInt.h"
|
||||||
@@ -1758,7 +1758,11 @@ int sqlite3pager_pagecount(Pager *pPager){
|
|||||||
pPager->errMask |= PAGER_ERR_DISK;
|
pPager->errMask |= PAGER_ERR_DISK;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
n /= pPager->pageSize;
|
if( n>0 && n<pPager->pageSize ){
|
||||||
|
n = 1;
|
||||||
|
}else{
|
||||||
|
n /= pPager->pageSize;
|
||||||
|
}
|
||||||
if( !MEMDB && n==PENDING_BYTE/pPager->pageSize ){
|
if( !MEMDB && n==PENDING_BYTE/pPager->pageSize ){
|
||||||
n++;
|
n++;
|
||||||
}
|
}
|
||||||
|
@@ -13,7 +13,7 @@
|
|||||||
# This file implements tests for miscellanous features that were
|
# This file implements tests for miscellanous features that were
|
||||||
# left out of other test files.
|
# left out of other test files.
|
||||||
#
|
#
|
||||||
# $Id: misc5.test,v 1.3 2005/06/06 21:19:58 drh Exp $
|
# $Id: misc5.test,v 1.4 2005/08/21 16:54:25 drh Exp $
|
||||||
|
|
||||||
set testdir [file dirname $argv0]
|
set testdir [file dirname $argv0]
|
||||||
source $testdir/tester.tcl
|
source $testdir/tester.tcl
|
||||||
@@ -472,5 +472,21 @@ do_test misc5-3.1 {
|
|||||||
}
|
}
|
||||||
} {two}
|
} {two}
|
||||||
|
|
||||||
|
# Ticket #1370. Do not overwrite small files (less than 1024 bytes)
|
||||||
|
# when trying to open them as a database.
|
||||||
|
#
|
||||||
|
do_test misc5-4.1 {
|
||||||
|
db close
|
||||||
|
file delete -force test.db
|
||||||
|
set fd [open test.db w]
|
||||||
|
puts $fd "This is not really a database"
|
||||||
|
close $fd
|
||||||
|
sqlite3 db test.db
|
||||||
|
catchsql {
|
||||||
|
CREATE TABLE t1(a,b,c);
|
||||||
|
}
|
||||||
|
} {1 {file is encrypted or is not a database}}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
finish_test
|
finish_test
|
||||||
|
Reference in New Issue
Block a user