1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-15 11:41:13 +03:00

Defend against disk I/O errors that happen during an sqlite3OsSeek(). (CVS 2679)

FossilOrigin-Name: 461e3a0a27ff083b0bae10c9880e3b41bb85ee31
This commit is contained in:
drh
2005-09-09 01:32:06 +00:00
parent c2bd913a40
commit b4746b9e33
5 changed files with 39 additions and 21 deletions

View File

@@ -473,6 +473,9 @@ int sqlite3OsSeek(OsFile *id, i64 offset){
LONG lowerBits = offset & 0xffffffff;
DWORD rc;
assert( id->isOpen );
#ifdef SQLITE_TEST
if( offset ) SimulateDiskfullError
#endif
SEEK(offset/1024 + 1);
rc = SetFilePointer(id->h, lowerBits, &upperBits, FILE_BEGIN);
TRACE3("SEEK %d %lld\n", id->h, offset);