mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-23 22:43:04 +01:00
Misc.
This commit is contained in:
parent
b23d31fbd8
commit
53bf05282d
@ -427,7 +427,7 @@ bool IntlManager::initialize()
|
|||||||
const Element* module = el->findChild("intl_module");
|
const Element* module = el->findChild("intl_module");
|
||||||
if (module)
|
if (module)
|
||||||
{
|
{
|
||||||
Firebird::string moduleName(module->getAttributeName(0));
|
const Firebird::string moduleName(module->getAttributeName(0));
|
||||||
ConfObj objModule(configFile.findObject("intl_module", moduleName.c_str()));
|
ConfObj objModule(configFile.findObject("intl_module", moduleName.c_str()));
|
||||||
filename = objModule->getValue("filename", "");
|
filename = objModule->getValue("filename", "");
|
||||||
configInfo = getConfigInfo(objModule);
|
configInfo = getConfigInfo(objModule);
|
||||||
|
@ -900,7 +900,7 @@ void CCH_fetch_page(
|
|||||||
Database* dbb = tdbb->getDatabase();
|
Database* dbb = tdbb->getDatabase();
|
||||||
BufferDesc* bdb = window->win_bdb;
|
BufferDesc* bdb = window->win_bdb;
|
||||||
|
|
||||||
ISC_STATUS* status = tdbb->tdbb_status_vector;
|
ISC_STATUS* const status = tdbb->tdbb_status_vector;
|
||||||
|
|
||||||
pag* page = bdb->bdb_buffer;
|
pag* page = bdb->bdb_buffer;
|
||||||
bdb->bdb_incarnation = ++dbb->dbb_page_incarnation;
|
bdb->bdb_incarnation = ++dbb->dbb_page_incarnation;
|
||||||
@ -1005,8 +1005,7 @@ void CCH_fetch_page(
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (retryCount++ == 3) {
|
if (retryCount++ == 3) {
|
||||||
fprintf(stderr,
|
fprintf(stderr, "IO error loop Unwind to avoid a hang\n");
|
||||||
"IO error loop Unwind to avoid a hang\n");
|
|
||||||
PAGE_LOCK_RELEASE(bdb->bdb_lock);
|
PAGE_LOCK_RELEASE(bdb->bdb_lock);
|
||||||
CCH_unwind(tdbb, true);
|
CCH_unwind(tdbb, true);
|
||||||
}
|
}
|
||||||
@ -1017,14 +1016,12 @@ void CCH_fetch_page(
|
|||||||
} // scope
|
} // scope
|
||||||
|
|
||||||
#ifndef NO_CHECKSUM
|
#ifndef NO_CHECKSUM
|
||||||
if (((compute_checksum == 1)
|
if ((compute_checksum == 1 || (compute_checksum == 2 && page->pag_type)) &&
|
||||||
|| ((compute_checksum == 2) && page->pag_type))
|
page->pag_checksum != CCH_checksum(bdb) && !(dbb->dbb_flags & DBB_damaged))
|
||||||
&& ((page->pag_checksum != CCH_checksum(bdb))
|
|
||||||
&& !(dbb->dbb_flags & DBB_damaged)))
|
|
||||||
{
|
{
|
||||||
IBERR_build_status(tdbb->tdbb_status_vector,
|
IBERR_build_status(status,
|
||||||
isc_db_corrupt,
|
isc_db_corrupt,
|
||||||
isc_arg_string, "",
|
isc_arg_string, "", // why isn't the db name used here?
|
||||||
isc_arg_gds, isc_bad_checksum,
|
isc_arg_gds, isc_bad_checksum,
|
||||||
isc_arg_gds, isc_badpage,
|
isc_arg_gds, isc_badpage,
|
||||||
isc_arg_number, (SLONG) bdb->bdb_page.getPageNum(), 0);
|
isc_arg_number, (SLONG) bdb->bdb_page.getPageNum(), 0);
|
||||||
|
Loading…
Reference in New Issue
Block a user