From f7dc07602b9f6dcc18e2256f88c4ad011547ab02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rn=20Friedrich=20Dreyer?= Date: Wed, 12 Jun 2013 15:48:22 +0200 Subject: [PATCH 1/2] minor cleanup for exception handling --- lib/db.php | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/lib/db.php b/lib/db.php index 080e895e35..cd96bcf9d3 100644 --- a/lib/db.php +++ b/lib/db.php @@ -568,10 +568,6 @@ class OC_DB { self::raiseExceptionOnError($definition,'Failed to parse the database definition'); - // Die in case something went wrong - if( $definition instanceof MDB2_Schema_Error ) { - OC_Template::printErrorPage( $definition->getMessage().': '.$definition->getUserInfo() ); - } if(OC_Config::getValue('dbtype', 'sqlite')==='oci') { unset($definition['charset']); //or MDB2 tries SHUTDOWN IMMEDIATE $oldname = $definition['name']; @@ -921,7 +917,7 @@ class OC_DB { } } /** - * check if a result is an error, writes a log entry and throws an exception, works with MDB2 and PDOException + * check if a result is an error and throws an exception, works with MDB2 and PDOException * @param mixed $result * @param string message * @return void @@ -934,7 +930,7 @@ class OC_DB { } else { $message .= ', Root cause:' . self::getErrorMessage($result); } - throw new DatabaseException($message, getErrorCode($result)); + throw new DatabaseException($message, self::getErrorCode($result)); } } From 31f7afe56adf8cae80b31d5a94cd37fc857bef9d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rn=20Friedrich=20Dreyer?= Date: Thu, 13 Jun 2013 13:14:00 +0200 Subject: [PATCH 2/2] PDOException has no previous(), oh the consistency ... --- lib/template.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/template.php b/lib/template.php index 01f0fc28b6..ae9ea18744 100644 --- a/lib/template.php +++ b/lib/template.php @@ -547,7 +547,7 @@ class OC_Template{ $error_msg = '['.$exception->getCode().'] '.$error_msg; } $hint = $exception->getTraceAsString(); - while ($exception = $exception->previous()) { + while (method_exists($exception,'previous') && $exception = $exception->previous()) { $error_msg .= '
Caused by: '; if ($exception->getCode()) { $error_msg .= '['.$exception->getCode().'] ';