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

Remove the xLockState method for sqlite3_io_methods. Replace it with

a defined call to xFileControl().  This simplifies the interface and
also gives us coverage testing of sqlite3_file_control(). (CVS 4355)

FossilOrigin-Name: 306586c412b87c6d12bac796641517afa3f9eb6a
This commit is contained in:
drh
2007-08-31 18:34:59 +00:00
parent e6a58a4e2a
commit 9e33c2c108
13 changed files with 70 additions and 110 deletions

View File

@@ -2016,20 +2016,18 @@ static int nolockUnixClose(sqlite3_file *id) {
/*
** No xFileControl opcodes are implemented by this VFS.
** Information and control of an open file handle.
*/
static int unixFileControl(sqlite3_file *id, int op, void *pArg){
switch( op ){
case SQLITE_FCNTL_LOCKSTATE: {
*(int*)pArg = ((unixFile*)id)->locktype;
return SQLITE_OK;
}
}
return SQLITE_ERROR;
}
/*
** Return an integer that indices the type of lock currently held
** by this handle. (Used for testing and analysis only.)
*/
static int unixLockState(sqlite3_file *id){
return ((unixFile*)id)->locktype;
}
/*
** Return the sector size in bytes of the underlying block device for
** the specified file. This is almost always 512 bytes, but may be
@@ -2066,7 +2064,6 @@ static const sqlite3_io_methods sqlite3UnixIoMethod = {
unixLock,
unixUnlock,
unixCheckReservedLock,
unixLockState,
unixFileControl,
unixSectorSize,
unixDeviceCharacteristics
@@ -2088,7 +2085,6 @@ static const sqlite3_io_methods sqlite3AFPLockingUnixIoMethod = {
afpUnixLock,
afpUnixUnlock,
afpUnixCheckReservedLock,
unixLockState,
unixFileControl,
unixSectorSize,
unixDeviceCharacteristics
@@ -2109,7 +2105,6 @@ static const sqlite3_io_methods sqlite3FlockLockingUnixIoMethod = {
flockUnixLock,
flockUnixUnlock,
flockUnixCheckReservedLock,
unixLockState,
unixFileControl,
unixSectorSize,
unixDeviceCharacteristics
@@ -2130,7 +2125,6 @@ static const sqlite3_io_methods sqlite3DotlockLockingUnixIoMethod = {
dotlockUnixLock,
dotlockUnixUnlock,
dotlockUnixCheckReservedLock,
unixLockState,
unixFileControl,
unixSectorSize,
unixDeviceCharacteristics
@@ -2151,7 +2145,6 @@ static const sqlite3_io_methods sqlite3NolockLockingUnixIoMethod = {
nolockUnixLock,
nolockUnixUnlock,
nolockUnixCheckReservedLock,
unixLockState,
unixFileControl,
unixSectorSize,
unixDeviceCharacteristics