1
0
Fork 0
mirror of https://github.com/archtechx/tenancy.git synced 2025-12-12 09:34:04 +00:00

handle exceptions in Tenancy:run()

This commit is contained in:
Samuel Štancl 2025-02-19 12:02:58 +01:00
parent 7bc2bb6f6a
commit b9cc63feed

View file

@ -77,20 +77,23 @@ class Tenancy
public function run(Tenant $tenant, Closure $callback): mixed
{
$originalTenant = $this->tenant;
$result = null;
$this->initialize($tenant);
$result = $callback($tenant);
try {
$this->initialize($tenant);
$result = $callback($tenant);
} finally {
if ($originalTenant) {
$this->initialize($originalTenant);
} else {
$this->end();
}
}
if ($result instanceof PendingDispatch) { // #1277
$result = null;
}
if ($originalTenant) {
$this->initialize($originalTenant);
} else {
$this->end();
}
return $result;
}