diff options
author | drh <drh@noemail.net> | 2008-03-27 22:42:51 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2008-03-27 22:42:51 +0000 |
commit | 19db935225bc66eafbc830e3a76262a0d68d870a (patch) | |
tree | d509c76e1bce618ae5be688df7f8d51d1974d1e0 /src/fault.c | |
parent | 9882d99993685fb111372c9205c2cd83952580a3 (diff) | |
download | sqlite-19db935225bc66eafbc830e3a76262a0d68d870a.tar.gz sqlite-19db935225bc66eafbc830e3a76262a0d68d870a.zip |
Allow the xAccess method in the VFS to return -1 to signal an I/O
error, and in particular an SQLITE_IOERR_NOMEM. (CVS 4925)
FossilOrigin-Name: 3cb704c4c439425781644b1b653b7e50f02fd91e
Diffstat (limited to 'src/fault.c')
-rw-r--r-- | src/fault.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/src/fault.c b/src/fault.c index 7e183ed43..d31dd4387 100644 --- a/src/fault.c +++ b/src/fault.c @@ -42,7 +42,7 @@ static struct FaultInjector { int nBenign; /* Number of benign failures seen since last config */ int nFail; /* Number of failures seen since last config */ u8 enable; /* True if enabled */ - u8 benign; /* Ture if next failure will be benign */ + u8 benign; /* True if next failure will be benign */ } aFault[SQLITE_FAULTINJECTOR_COUNT]; /* @@ -105,8 +105,14 @@ int sqlite3FaultPending(int id){ ** a hash table resize is a benign fault. */ void sqlite3FaultBenign(int id, int enable){ - assert( id>=0 && id<SQLITE_FAULTINJECTOR_COUNT ); - aFault[id].benign = enable; + if( id<0 ){ + for(id=0; id<SQLITE_FAULTINJECTOR_COUNT; id++){ + aFault[id].benign = enable; + } + }else{ + assert( id>=0 && id<SQLITE_FAULTINJECTOR_COUNT ); + aFault[id].benign = enable; + } } /* |