mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-23 06:03:02 +01:00
Gstat will have problems if it has to seek to a db page beyond 4GB from BOF, because we detect a problem that didn't happen. I put the check that appears in my old VC6 MSDN examples and that matches Vulcan's logic.
This commit is contained in:
parent
4b7ec2fe29
commit
8f082b0532
@ -1485,13 +1485,17 @@ static const pag* db_read( SLONG page_number)
|
||||
(fil->fil_desc, (LONG) liOffset.LowPart, &liOffset.HighPart,
|
||||
FILE_BEGIN) == (DWORD) -1)
|
||||
{
|
||||
int lastError = GetLastError();
|
||||
if (lastError != NO_ERROR)
|
||||
{
|
||||
#ifdef SERVICE_THREAD
|
||||
CMD_UTIL_put_svc_status(tddba->dba_service_blk->svc_status,
|
||||
GSTAT_MSG_FAC, 30,
|
||||
0, NULL, 0, NULL, 0, NULL, 0, NULL, 0, NULL);
|
||||
// msg 30: Can't read a database page
|
||||
CMD_UTIL_put_svc_status(tddba->dba_service_blk->svc_status,
|
||||
GSTAT_MSG_FAC, 30,
|
||||
0, NULL, 0, NULL, 0, NULL, 0, NULL, 0, NULL);
|
||||
// msg 30: Can't read a database page
|
||||
#endif
|
||||
db_error(GetLastError());
|
||||
db_error(lastError);
|
||||
}
|
||||
}
|
||||
|
||||
SLONG actual_length;
|
||||
|
Loading…
Reference in New Issue
Block a user