diff options
author | Christoph Wurst <christoph@winzerhof-wurst.at> | 2020-06-16 15:37:20 +0200 |
---|---|---|
committer | Christoph Wurst <christoph@winzerhof-wurst.at> | 2020-06-16 15:37:20 +0200 |
commit | 94a95ffceb0ec16b333d13a0742a5e0c2c1ed93e (patch) | |
tree | c326d780722cd7b7ba330dd0a796b85d2f24a569 /ocs | |
parent | 5e52c110bb149f35ec46472a4834a5f9a25c4892 (diff) | |
download | nextcloud-server-94a95ffceb0ec16b333d13a0742a5e0c2c1ed93e.tar.gz nextcloud-server-94a95ffceb0ec16b333d13a0742a5e0c2c1ed93e.zip |
Fix invalid usage of \Exception::getResult
Only OCS exceptions have a getResult method. Any other exception will
cause another error due to this invalid method call.
This splits the catch into a specific one for OCS and then a generic one
for anything else that can't be handled.
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
Diffstat (limited to 'ocs')
-rw-r--r-- | ocs/v1.php | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/ocs/v1.php b/ocs/v1.php index 983bfd5f77d..0c24aa814eb 100644 --- a/ocs/v1.php +++ b/ocs/v1.php @@ -67,9 +67,15 @@ try { OC_API::setContentType(); http_response_code(405); exit(); -} catch (Exception $ex) { +} catch (\OC\OCS\Exception $ex) { OC_API::respond($ex->getResult(), OC_API::requestedFormat()); exit(); +} catch (Throwable $ex) { + OC::$server->getLogger()->logException($ex); + + OC_API::setContentType(); + http_response_code(500); + exit(); } /* |