From a05147e25c87e320b9dd3d95d244109d88057e62 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Thu, 24 Jul 2014 17:18:10 +0200 Subject: [PATCH] handle service not available exceptions in index, remote and public.php --- index.php | 6 ++++++ public.php | 5 +++++ remote.php | 4 ++++ 3 files changed, 15 insertions(+) diff --git a/index.php b/index.php index bd94d0e908..061391892f 100755 --- a/index.php +++ b/index.php @@ -27,6 +27,12 @@ try { OC::handleRequest(); +} catch(\OC\ServiceUnavailableException $ex) { + \OCP\Util::logException('index', $ex); + + //show the user a detailed error page + OC_Response::setStatus(OC_Response::STATUS_SERVICE_UNAVAILABLE); + OC_Template::printExceptionErrorPage($ex); } catch (Exception $ex) { \OCP\Util::logException('index', $ex); diff --git a/public.php b/public.php index 2ac082dba5..0e04db66da 100644 --- a/public.php +++ b/public.php @@ -45,6 +45,11 @@ try { require_once OC_App::getAppPath($app) . '/' . $parts[1]; +} catch (\OC\ServiceUnavailableException $ex) { + //show the user a detailed error page + OC_Response::setStatus(OC_Response::STATUS_SERVICE_UNAVAILABLE); + \OCP\Util::writeLog('remote', $ex->getMessage(), \OCP\Util::FATAL); + OC_Template::printExceptionErrorPage($ex); } catch (Exception $ex) { //show the user a detailed error page OC_Response::setStatus(OC_Response::STATUS_INTERNAL_SERVER_ERROR); diff --git a/remote.php b/remote.php index a91742b047..d854b1d65a 100644 --- a/remote.php +++ b/remote.php @@ -51,6 +51,10 @@ try { $baseuri = OC::$WEBROOT . '/remote.php/'.$service.'/'; require_once $file; +} catch (\OC\ServiceUnavailableException $ex) { + OC_Response::setStatus(OC_Response::STATUS_SERVICE_UNAVAILABLE); + \OCP\Util::writeLog('remote', $ex->getMessage(), \OCP\Util::FATAL); + OC_Template::printExceptionErrorPage($ex); } catch (Exception $ex) { OC_Response::setStatus(OC_Response::STATUS_INTERNAL_SERVER_ERROR); \OCP\Util::writeLog('remote', $ex->getMessage(), \OCP\Util::FATAL);