mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-23 03:23:04 +01:00
Fixed CORE-4911: Providers enumeration should not be continued on most of errors taking place in the provider
This commit is contained in:
parent
606d459a63
commit
b65849748f
@ -5646,8 +5646,19 @@ YAttachment* Dispatcher::attachOrCreateDatabase(Firebird::CheckStatusWrapper* st
|
|||||||
return new YAttachment(provider, attachment, expandedFilename);
|
return new YAttachment(provider, attachment, expandedFilename);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (currentStatus->getErrors()[1] != isc_unavailable)
|
switch(currentStatus->getErrors()[1])
|
||||||
|
{
|
||||||
|
case isc_io_error:
|
||||||
|
case isc_lock_dir_access:
|
||||||
|
case isc_no_priv:
|
||||||
currentStatus = &tempCheckStatusWrapper;
|
currentStatus = &tempCheckStatusWrapper;
|
||||||
|
// fall down...
|
||||||
|
case isc_unavailable:
|
||||||
|
break;
|
||||||
|
|
||||||
|
default:
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
currentStatus->init();
|
currentStatus->init();
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user